问题:通过datatable绑定dropdownlist的值,切换选项时,选择项的值不变。
前台代码:
<asp:DropDownList ID="ddlModules" runat="server" OnSelectedIndexChanged="ddlModules_SelectedIndexChanged">
</asp:DropDownList>
后台代码
protected void ddlModules_SelectedIndexChanged(object sender, EventArgs e)
{
string text = this.ddlModules.SelectedItem.Text;
string value = this.ddlModules.SelectedItem.Value;
}
获取到的text始终是第一项的值。
已验证内容:
通过写死的方式绑定dropdownlist的值,切换选项时,选择项的值变化。
前台代码:
<asp:DropDownList ID="DropDownList2" runat="server" OnTextChanged="DropDownList2_SelectedIndexChanged">
<asp:ListItem>全部</asp:ListItem>
<asp:ListItem>咨询</asp:ListItem>
<asp:ListItem>论坛</asp:ListItem>
</asp:DropDownList>
切换时,selected属性会加在当前选择项上。
<select name="ctl00$ContentPlaceHolder1$DropDownList2" onchange="javascript:setTimeout('__doPostBack(\'ctl00$ContentPlaceHolder1$DropDownList2\',\'\')', 0)" id="ContentPlaceHolder1_DropDownList2" class="valid">
<option value="全部">全部</option>
<option selected="selected" value="咨询">咨询</option>
<option value="论坛">论坛</option>
</select>
不明白,请求指导。
4 回答
一只甜甜圈
TA贡献1836条经验 获得超5个赞
<asp:DropDownList ID="ddlModules" runat="server" OnSelectedIndexChanged="ddlModules_SelectedIndexChanged"> </asp:DropDownList>
在这里面加上一个autopostback=true应该是的
几年不写webform了,有个属性就是允许回调的。
狐的传说
TA贡献1804条经验 获得超3个赞
谢谢!这个试过了,不行
前台都一模一样。后台绑定的是DataTable的数据,感觉就这是最主要的差别
DataTable dt = GetModulesDataTable(); ddlModules.DataSource = dt; ddlModules.DataTextField = "ModuleName"; ddlModules.DataValueField = "TableName"; ddlModules.DataBind();
- 4 回答
- 0 关注
- 679 浏览
添加回答
举报
0/150
提交
取消