如何在后台生成一个option时,选中我想要选中的项?
<select id="zgxl" name="zgxl" style="WIDTH: 200px">
<option value="">--请选择--</option>
<option value="<%=zgxl2 %>" selected="selected"><%=zgxl2%></option>
<%getXLOption(); %>
这是我在前台的代码。
protected void getXLOption()
{
HY_GRXX grxx = this.GetHY_GRXX();
DM_Mgr mgr = new DM_Mgr(new DM_XL());
DataTable dtXl = mgr.GetDataTable();
for (int i = 0; i < dtXl.Rows.Count; i++)
{
Response.Write("<option value='" + dtXl.Rows[i]["XL_DM"].ToString() + "'");
Response.Write("> " + dtXl.Rows[i]["XL_SM"].ToString() + " </option>");
}
}
我想要的是在后台的两个Response.Write之间加一个if判断,在生成option时就传入zgxl2这个对象,选中的效果和在前台写
<option value="<%=zgxl2 %>" selected="selected"><%=zgxl2%></option>一样,这样在前台就不需要这样写了,这个if
判断该怎么写呢???
------解决方案--------------------
前台:
<select id="zgxl" name="zgxl" style="WIDTH: 200px" runat="server">
</select>
后台:
HY_GRXX grxx = this.GetHY_GRXX();
DM_Mgr mgr = new DM_Mgr(new DM_XL());
DataTable dtXl = mgr.GetDataTable();
for (int i = 0; i < dtXl.Rows.Count; i++)
{
this.zgxl.Items.Add(new ListItem(dtXl.Rows[i]["XL_SM"].ToString(),dtXl.Rows[i]["XL_DM"].ToString() );
}
this.zgxl.Items.FindByValue(zgxl2).Selected = true;