我用活动目录用户填写了一个下拉列表,没什么大不了的,而且效果很好。问题是它设置<option selected="selected" value="user">User</option>
在第一个并且不会让我在后面的代码中更改它。有没有办法让它不自动设置selected="selected"
?
问问题
5367 次
3 回答
2
<asp:DropDownList ID="dlst" runat="server" Width="200px"
AutoPostBack="True" DataSourceID="dlstvalues" DataTextField="name"
AppendDataBoundItems="true">
<asp:ListItem>-- Select --</asp:ListItem>
</asp:DropDownList>
或者这应该工作:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DropDownList1.AppendDataBoundItems = true;
DropDownList1.Items.Insert(0, new ListItem(String.Empty, String.Empty));
DropDownList1.SelectedIndex = 0;
}
}
于 2013-02-18T16:58:44.287 回答
0
它会自动将第一个设置为选中。您必须在下拉列表中输入默认值并将其设置为第一项。
ddlName.Items.Insert(0, new System.Web.UI.WebControls.ListItem("<--Select-->", "0"));
于 2013-02-18T16:57:47.787 回答
0
这是发生的,因为您可能在页面加载时绑定了 dorpdown。
而且您可能没有检查回发
这样做,它会再次绑定值,您将在下拉列表中获得新项目。
以前的selected index
不会保留。
你应该在 !isPostBack 中绑定它
if (!Page.IsPostBack)
{
//bind data
}
于 2013-02-18T16:58:25.170 回答