简体   繁体   English

回发后如何保持下拉列表选择的值?

[英]How to maintain dropdownlist selected value after postback?

I am using Asp.Net MVC4. 我正在使用Asp.Net MVC4。 I have a html select in a view page. 我在视图页面中有一个html select。 I want to maintain the selected value after postback. 我要在回发后保持选定的值。

View: 视图:

@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: 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);
  }

Here, In filter, I have one drop down, textbox and button. 在这里,在过滤器中,我有一个下拉菜单,文本框和按钮。 When I select the dropdown and click the search button, the selected value is passed to the controller class and it returns the filtered data to the view. 当我选择下拉列表并单击搜索按钮时,所选值将传递到控制器类,并将过滤后的数据返回到视图。 But the drop down does not maintain the selected value. 但是下拉菜单不会保留所选的值。 It again resets. 再次重置。 How to maintain the drop down selected value in MVC? 如何在MVC中保持下拉选择的值?

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>

 <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> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM