2013-06-19 50 views
0

我在表单中有这个下拉列表,它显示了从数据库调用的名称列表。每当我选择一个并提交表单时,页面刷新将显示结果,并且所选值将变回空白。发布表单后,是否有办法保留选定的值?如何保留后(剃须刀)后选择的下拉列表的值

<li class="form-line form-line-column" id="id_22"> 
    <label class="form-label-top" id="label_22" for="input_22"> ADMIN </label> 
    <div id="cid_22" class="form-input-wide">  
    <select name="formAssigned_To"> 
    <option></option> 
    @foreach(var row in db.Query("SELECT DISTINCT Name FROM Admins")){  
    <option value="@row.Name">@row.Name</option> 
    } 
     </select> 
     </div> 
     </li> 

我有相同的形式这等下拉,因此其不被从数据库中,选择的值停留称这一个是静态的。但是,我不能在第一个下拉菜单中做同样的事情,为什么?

<li class="form-line form-line-column" id="id_22"> 
     <label class="form-label-top" id="label_22" for="input_22"> Status </label> 
     <div id="cid_22" class="form-input-wide"> 
      <select class="form-dropdown" style="width:75px" id="input_22" name="formCase_Status"> 
      <option selected="@(Request["formCase_Status"])"></option> 
      <option selected="@(Request["formCase_Status"] == "In Progress")" value="In Progress"> In Progress </option> 
      <option selected="@(Request["formCase_Status"] == "Pending")" value="Pending"> Pending </option> 
      <option selected="@(Request["formCase_Status"] == "Closed")" value="Closed"> Closed </option> 
      </select> 
     </div> 
     </li> 

回答

0

这是我如何解决我的问题:

<select class="form-dropdown" style="width:130px" id="formAssigned_To" name="formAssigned_To"> 
<option selected =""></option> 
<option selected="@(Request["formAssigned_To"] == "Not Assigned")" value="Not Assigned">Not Assigned</option> 
@{foreach(var row in db.Query("SELECT DISTINCT Name FROM Admins")){  
<option selected="@(Request["formAssigned_To"] == row.Name)" value="@row.Name">@row.Name</option> 
    } 
    } 
</select> 

比这为我工作外,没有什么,我希望它可以帮助别人!

0

在发布后,我将值保存回数据库,然后使用JQuery选择适当的值。这很方便,因为我使用相同的屏幕编辑模式和添加模式,并且在编辑模式下它选择保存在数据库中的默认屏幕。如果你想知道如何让价值进出数据库这里是一个伟大的教程:http://www.asp.net/web-pages/tutorials

这里是我的JQuery:

<script type="text/javascript"> 
    $('[name="programslist"]').val("@programid"); 
</script> 

这是我的HTML填充列表:

<label for="programslist">Division:Program</label> 
    <select name="programslist" id="programslist"> 
     @foreach(var row in programsListData) 
     { 
     <option value="@row.id">@row.Name</option> 
     } 
     </select> 

我希望这有助于!

+0

@programid是存储来自数据库的id值的c#变量。本教程将向您展示如何从数据库中存储和检索该值。 –

+0

你介意给我一个确切的链接吗?我试过链接,它显示了很多其他教程,你还记得它的名字吗? – Alexandra

+0

亚历山德拉肯定的事情:http://www.asp.net/web-pages/tutorials/data/5-working-with-data –

相关问题