关于CheckBoxlist多选,选择一个后会自动退出

问道于旁 问道于旁 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
写了一个弹出层CheckBoxlist, 绑定数据没有问题,
错误是:进入CheckBoxList页面后,单击选择一个,就会执行 cblOrderPerson_SelectedIndexChanged一次,然后退出,
百思不得其解,
求指导,调试也没找出错误,
正常情况下,应该是点击一个user, 执行cblOrderPerson_SelectedIndexChanged一次,但是不会退出,继续点击下一个,实现多选功能。

如果有更好的办法,请说明,谢了


<asp:CheckBoxList ID="cblOrderPerson" runat="server" RepeatColumns="6" RepeatDirection="Horizontal"
Width="100%" OnSelectedIndexChanged="cblOrderPerson_SelectedIndexChanged" AutoPostBack="True">
</asp:CheckBoxList>



protected void SelectPersonItem_Command(object sender, CommandEventArgs e)
{
int cooId = this.lstCooName.SelectedValue.ToInteger();
int cooTypeId = this.lstCooType.SelectedValue.ToInteger();
WorkOrderPersonConfigLogic workOrderPersonConfigLogic = new WorkOrderPersonConfigLogic();
if (cooId != 0 && e.CommandName == "SelectPersonItem")
{
DataTable dtPersonInfo = workOrderPersonConfigLogic.GetOrderPersonNameByCooTypeIdAndCooId(cooId, cooTypeId);
if (dtPersonInfo != null && dtPersonInfo.Rows.Count > 0)
{
this.cblOrderPerson.DataSource = dtPersonInfo;
this.cblOrderPerson.DataValueField = "USER_ID";
this.cblOrderPerson.DataTextField = "PERSON_NAME";
this.cblOrderPerson.DataBind();

this.lblCooId.Text = cooId.ToString(); ;
this.lblCooTypeId.Text = cooTypeId.ToString();
this.lblOrderPersonId.Text = "USER_ID";
}
}



protected void cblOrderPerson_SelectedIndexChanged(object sender, EventArgs e)
{
PageChanged(sender);
}
/// <summary>
/// 选择多个user
/// </summary>
/// <param name="sender">功能:对user进行多个选择</param>
public void PageChanged(object sender)
{
//string userIds = this.lblOrderPersonId.Text.Trim();
this.lblOrderPersonId.Text = "0";
for (int i = 0; i < cblOrderPerson.Items.Count; i++ )
{
if (this.cblOrderPerson.Items[i].Selected == true)
{
this.lblOrderPersonId.Text = this.lblOrderPersonId.Text + cblOrderPerson.Items[i].Value + ",";
}
}
}
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
问道于旁
.NET社区 62,271 成员 668,968 内容