2016-09-24 14 views
0

自分のページのローカリゼーションの選択肢のドロップダウンリストを作成したいと思います。しかし、私は<ul>タグでこれを行うにしようとした場合Html.ActionLinkヘルパーが Asp.net mvc Bootstrap SelectでHtml.ActionLinkが機能しません

以下
@{ 
    var routeValues = this.ViewContext.RouteData.Values; 
    var controller = routeValues["controller"] as string; 
    var action = routeValues["action"] as string; 
    } 

<ul> 
    <li> 
     @Html.ActionLink("TR", @action, @controller, new { culture = "tr" }, new { rel = "alternate", hreflang = "tr" }) 
    </li> 
    <li> 
     @Html.ActionLink("EN", @action, @controller, new { culture = "en" }, new { rel = "alternate", hreflang = "en" }) 
    </li> 
</ul> 

のような言語コードとの真のリンクを作成します。しかし、私はブートストラップ選択コントロールで、それが唯一にしていないテキストを表示することを行いたい場合は、私に行きますurl。

<select class="bs-select form-control" data-width="auto" id="js-data-example-ajax" name="js-data-example-ajax"> 
    <option>@Html.ActionLink("TR", @action, @controller, new {culture = "tr"}, new {rel = "alternate", hreflang = "tr"})</option> 
    <option>@Html.ActionLink("EN", @action, @controller, new { culture = "en" }, new { rel = "alternate", hreflang = "en" })</option> 
</select> 

答えて

0

あなたは

$('#js-data-example-ajax').on('change', function() { 
     var yourUrl = $('#js-data-example-ajax').find(":selected").data('url'); 
     document.location = yourUrl ; 
    }); 
のようなjQueryの表情でこの

<option data-url="@Url.Action(@action, @controller)"> 
TR 
</option> 

あなたのドロップダウン変更イベントのような他のオプションを持っています

0

私はコードの下に参照してください私のプロジェクトで同じことをこれを行っています

私はJavaScriptを使用して、これを行っています。

マイ.cshtmlコード:

@Html.DropDownList(
    "url", 
    new SelectList(new[] 
    { 
     new SelectListItem { Text = "About", Value = Url.Action("About", "Home") }, 
     new SelectListItem { Text = "MyPage", Value = Url.Action("Index", "Home") }, 
     new SelectListItem { Text = "APage", Value = Url.Action("AnyPage", "Home") }, 
    }, "Value", "Text"), 
    "-- Pick an URL ---", 
    new { id = "urlddl" } 
) 

私のjQueryのコード:

$(function() { 
    $('#urlddl').change(function() { 
     var url = $(this).val(); 
     if (url != null && url != '') { 
      window.location.href = url; 
     } 
    }); 
}); 

のjQueryを使用して、あなたがこのドロップダウンリストの変更イベントに加入し、対応するURLにナビゲートできます。

あなたの問題を解決することを願っています。

おかげ

関連する問題