2014-07-15 54 views
0

我正在使用我的网站的移动版本。我有选择操作的选项,但是当我选择时,例如“关于”它会带我到正确的页面,但导航栏返回到“主页”选项。我如何去做这件事?在此先感谢剃刀中的有效选择选项

<select class="navbar-nav" style="width:250px" onchange='location.href = this.value'> 
       <option value="@Url.Action("Index", "Home")">Home</option> 
       <option value="@Url.Action("About", "Home")">About</option> 
       <option value="@Url.Action("Products", "Home")">Products</option> 
       <option value="@Url.Action("Services", "Home")">Services</option> 
       <option value="@Url.Action("Contact", "Home")">Contact</option> 
      </select> 

回答

0
<option selected="@ViewBag.Home" value="@Url.Action("Index", "Home")">Home</option> 
    <option selected="@ViewBag.About" value="@Url.Action("About", "Home")">About</option> 
    <option selected="@ViewBag.Products" value="@Url.Action("Products", "Home")">Products</option> 
    <option selected="@ViewBag.Services" value="@Url.Action("Services", "Home")">Services</option> 
    <option selected="@ViewBag.Contact" value="@Url.Action("Contact", "Home")">Contact</option> 

,并在您Home.cshtml

@{ 
    ViewBag.Home = true; 
} 

和其他页面。

+0

与此选项一起使用。 – user3750212

0

你可以这样说:

@{ 
    Dictionary<string, string> menu = new Dictionary<string, string>(); 
    menu.Add("Home", @Url.Action("Index", "Home")); 
    menu.Add("About", @Url.Action("About", "Home")); 
    menu.Add("Products", @Url.Action("Products", "Home")); 
    menu.Add("Services", @Url.Action("Services", "Home")); 
    menu.Add("Contact", @Url.Action("Contact", "Home"));  

} 
<select class="navbar-nav" style="width:250px" onchange='location.href = this.value'> 
    @foreach (var m in menu) 
    { 
    <option value="@m.Value" @(m.Value == Request.Url.AbsoluteUri ? "selected='selected' " : "")>@m.Key</option> 
    } 
</select> 
+0

我试过这个,导航工作正常,但它仍然在做同样的事情。虽然 – user3750212

+0

尝试将空间放在“selected ='选中'”而不是。 或“selected ='true'” –