2015-11-04 33 views
1

我正在使用Asp.Net MVC4。我在查看页面中有一个html选择。我想在回发后保持选定的值。如何在回发后维护dropdownlist选定值?

查看:

@using (Html.BeginForm("TaxMaster", "Masters", FormMethod.Get)) 
{ 
    <div> 
    <select id="ddlSearchBy" name="ddlSearchBy" style="width: 150px"> 
    <option value="TaxCode">Tax Code</option> 
    <option value="TaxDescription">Tax Description</option> 
    <option value="ClassDescription">Class Description</option> 
    <option value="ZoneName">Zone Name</option> 
    </select> 
    <input type="text" class="input-small" name="txtSearchValue" id="txtSearchValue" placeholder="Enter Search Value" style="width: 225px" />&ensp; 
    <button type="button" id="btnSearch" class="btn btn-small btn-primary">Search</button> 
     </div> 
} 

MastersController.cs:

[HttpGet] 
    public ActionResult TaxMaster(string txtSearchValue, string ddlSearchBy) 
    { 
     TaxMaster objTaxTable = new TaxMaster(); 
     objTaxTable.TaxTable = new List<moreInsights_offinvoice_taxmaster>(); 
     objTaxTable.TaxTable = GetTaxMasterTable(ddlSearchBy, txtSearchValue); 
     return View(objTaxTable); 
    } 

在这里,过滤器,我有一个下拉菜单,文本框和按钮。当我选择下拉菜单并单击搜索按钮时,选定的值将传递给控制器​​类,并将过滤的数据返回给视图。但下拉不能保持选定的值。它再次重置。如何在MVC中保持下拉选定值?

+0

它可以帮助你:http://stackoverflow.com/questions/6981698/how-to-keep-dropdownlist-selected-value-after-postback –

+0

只是回答[这个类似的问题](http://stackoverflow.com/questions/33488883/asp-net-mvc-filter-view-with-selected-combo/33510236#33510236) –

回答

1
public ActionResult TaxMaster(string txtSearchValue, string ddlSearchBy) 
{ 
    TaxMaster objTaxTable = new TaxMaster(); 
    objTaxTable.TaxTable = new List<moreInsights_offinvoice_taxmaster>(); 
    objTaxTable.TaxTable = GetTaxMasterTable(ddlSearchBy, txtSearchValue); 
    ViewBag.SelectedOption=ddlSearchBy; 
    return View(objTaxTable); 
} 

string selectedOption = ViewBag.SelectedOption; 

<select id="ddlSearchBy" name="ddlSearchBy" style="width: 150px"> 
<option value="TaxCode" selected="@(selectedOption == "TaxCode" ? "selected" : "")">Tax Code</option> 
<option value="TaxDescription" selected="@(selectedOption == "TaxDescription" ? "selected" : "")">Tax Description</option> 
<option value="ClassDescription" selected="@(selectedOption == "ClassDescription" ? "selected" : "")">Class Description</option> 
<option value="ZoneName" selected="@(selectedOption == "ZoneName" ? "selected" : "")">Zone Name</option> 
</select> 
0

<select class="form-control" id="TipoTarjeta" name="TipoTarjeta"> 
 
<option <%= Convert.ToString(Request.Form["TipoTarjeta"] != null ? Request.Form["TipoTarjeta"] : "") == "" ? "selected" : "" %>>Seleccione 
 
</option> 
 
<option <%= (Convert.ToString(Request.Form["TipoTarjeta"] != null ? Request.Form["TipoTarjeta"] : "").ToLower() == "visa" ? "selected" : "") %>>Visa</option> 
 
<option <%= (Convert.ToString(Request.Form["TipoTarjeta"] != null ? Request.Form["TipoTarjeta"] : "").ToLower() == "mastercard" ? "selected" : "") %>>Mastercard</option> 
 
<option <%= (Convert.ToString(Request.Form["TipoTarjeta"] != null ? Request.Form["TipoTarjeta"] : "").ToLower() == "american express" ? "selected" : "") %>>American Express</option> 
 
<option <%= (Convert.ToString(Request.Form["TipoTarjeta"] != null ? Request.Form["TipoTarjeta"] : "").ToLower() == "otra" ? "selected" : "") %>>Otra</option> 
 
</select>

相关问题