使用c#html下拉列表帮助器呈现引导下拉菜单

使用c#html下拉列表帮助器呈现引导下拉菜单,c#,twitter-bootstrap,razor,twitter-bootstrap-3,html-helper,C#,Twitter Bootstrap,Razor,Twitter Bootstrap 3,Html Helper,我已经为我的网站创建了一个附在下拉菜单上的搜索输入。但是我需要用html助手选择列表中的项目填充下拉菜单中的项目,这对于搜索功能是必不可少的。是否可以在发布到控制器的引导下拉菜单中呈现搜索列表的项目 HTML搜索功能 <div class="col-lg-6"> @{using (Html.BeginForm("Results", "Searchv2", FormMethod.Get)) { <div class="input-group"> <div

我已经为我的网站创建了一个附在下拉菜单上的搜索输入。但是我需要用html助手选择列表中的项目填充下拉菜单中的项目,这对于搜索功能是必不可少的。是否可以在发布到控制器的引导下拉菜单中呈现搜索列表的项目

HTML搜索功能

<div class="col-lg-6">
@{using (Html.BeginForm("Results", "Searchv2", FormMethod.Get)) {
  <div class="input-group">
    <div class="input-group-btn">
      <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">Action <span class="caret"></span></button>
      <ul class="dropdown-menu">
      @Html.DropDownList("Searchby", new SelectList(new[] { "User", "Restaurant", "Cuisine" }))
      </ul>
    </div>
    <input type="text" class="form-control" placeholder="Search" name="SearchString" id="SearchString">
  </div>
}}
</div>

@{使用(Html.BeginForm(“Results”,“Searchv2”,FormMethod.Get)){
行动
    @DropDownList(“Searchby”,new SelectList(new[]{“User”,“Restaurant”,“coineering”}))
}}
使用引导下拉菜单中的常规超链接标记:

<ul class="dropdown-menu">
@foreach (var searchType in new[] { "User", "Restaurant", "Cuisine" })
{
    <li><a href="#">@searchType</a></li>
}
</ul>
    @foreach(新[]{“用户”、“餐厅”、“美食”}中的var searchType) {
  • }
然后,在选择这些超链接时,使用JQuery设置隐藏的输入值:

<input type="hidden" name="SearchBy" />
<script>
    $(".dropdown-menu a").click(function() {        
        $("input[name='SearchBy']").val($(this).html());            
    });
</script>

$(“.下拉菜单a”)。单击(函数(){
$(“输入[name='SearchBy']”)val($(this.html());
});

这将在下拉菜单的选择列表中呈现。但它不会将searchBy的值传递给控制器。我该怎么做?单击submit时是否看到Url中传递的值?您可以通过向控制器方法添加名为SearchBy的字符串参数来访问。您也可以简单地使用Request.QueryString[“SearchBy”]