复选框列表循环不起作用
本文关键字:不起作用 循环 列表 复选框 | 更新日期: 2023-09-27 18:28:44
我在asp.net页面中有一个dropdownlist控件和一个按钮。下拉列表是通过一个方法填充的。如果我选择了第一个项目以外的任何项目,在单击按钮后,我会在DDL中丢失所选项目,它会选择第一个项目,而且我只在按钮单击事件中获得第一个项目的值。我该如何解决这个问题?
<asp:DropDownList ID="userDropDown" runat="server" DataTextField="CustomerName" DataValueField="CustomerId">
</asp:DropDownList>
protected void Button1_Click(object sender, EventArgs e)
{
if(!page.isPostBack)
{
userDropDown.DataSource = CC.GetCustomers();
userDropDown.DataBind();
}
}
我认为您必须在Page_Load
事件中无条件绑定userDropDown
if (!IsPostBack)
请将dropdown binding part
置于if (!IsPostBack)
条件内,然后它应该工作
请在if(!ispostback){}或提交按钮后,请将更新的字段绑定到dropdownloadname.text
这听起来像是在根据任何请求将DropdownList绑定到数据源。相反,只有当Page.IsPostBack
为false时才绑定它,如下所示;(您可能不需要ObjectDataSource
)
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//bind your datasource here (something like below)
userDropDown.DataSource = GetCustomers();
userDropDown.DataBind();
}
}
一旦调用DataBind()方法,它将丢失该对象的已发布数据,并且默认情况下将选择FirstItem。