在MVC视图中设置回发时引导程序下拉按钮的选定值
本文关键字:按钮 引导程序 视图 MVC 设置 | 更新日期: 2023-09-27 18:22:11
我构建了一个带有下拉按钮的引导搜索,可以选择搜索类型,例如名字或姓氏。我大部分时间都在工作,并且能够毫无问题地将搜索类型和字符串传递到我的模型中。我遇到的问题是,在单击搜索按钮并进行回发后,下拉选择器将返回到其默认设置,并且我希望在回发期间显示放回隐藏字段的搜索类型。
隐藏字段和搜索字符串是在回发时填充的,但我不确定设置下拉列表值的最佳方法。
<div class="row">
@using (Html.BeginForm())
{
<div class="input-group col-md-6 col-md-offset-3">
<div class="input-group-btn search-All-panel">
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
<span id="search_All_concept">@SiteStrings.FilterBy</span> <span id="txt" class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
<li><a href="#">@SiteStrings.All</a></li>
<li><a href="#level">@SiteStrings.Level</a></li>
<li><a href="#UCI">UCI</a></li>
<li><a href="#firstname">@SiteStrings.FirstName</a></li>
<li><a href="#lastname">@SiteStrings.LastName</a></li>
</ul>
</div>
@Html.HiddenFor(s => s.search_All_param)
@*<input type="text" class="form-control" name="search_All_String" placeholder="Search term..." />*@
@Html.EditorFor(s => s.search_All_String, new { htmlAttributes = new { @class = "form-control", @placeholder = "Search for..." } })
<span class="input-group-btn">
<button class="btn btn-primary" type="submit"><span class="glyphicon glyphicon-search"></span></button>
</span>
</div>
}
</div>
只需使用一个三进制来应用活动类:
<li class="@(Model.search_All_param == SiteStrings.All ? "active" : null)">
<a href="#">@SiteStrings.All</a>
</li>
冲洗并重复下拉列表中的每个项目。
我想还有更好的方法,但这正是我所需要的。。。
<div class="row">
@using (Html.BeginForm())
{
<div class="input-group col-md-6 col-md-offset-3">
<div class="input-group-btn search-All-panel">
<button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
<span id="search_All_concept">
@{
switch(@Model.search_All_param)
{
case "level":
@SiteStrings.Level
break;
case "firstname":
@SiteStrings.FirstName
break;
case "lastname":
@SiteStrings.LastName
break;
default:
@SiteStrings.FilterBy
break;
}
}
</span> <span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu">
<li><a href="#">@SiteStrings.All</a></li>
<li><a href="#level">@SiteStrings.Level</a></li>
<li><a href="#firstname">@SiteStrings.FirstName</a></li>
<li><a href="#lastname">@SiteStrings.LastName</a></li>
</ul>
</div>
@Html.HiddenFor(s => s.search_All_param)
@Html.EditorFor(s => s.search_All_String, new { htmlAttributes = new { @class = "form-control", @placeholder = "Search for..." } })
<span class="input-group-btn">
<button class="btn btn-primary" type="submit"><span class="glyphicon glyphicon-search"></span></button>
</span>
</div>
}
</div>