CheckBoxList 启用了:AutopostBack;protected void CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e)
    {                 
            sum = CheckBoxList1.SelectedItem.Text.ToString().Trim() + ";" + HiddenField1.Value;
            HiddenField1.Value = sum;              }我现在是每选中一个,就把内容给HiddenField1.Value。这样是正常的,但是我一取消,就不正常了,不知道怎么弄了?如何知道他是被取消状态,并把HiddenField1.Value的内容删除一个

解决方案 »

  1.   

    string s="";
    for(int i=0;i<cbxList.Items.Count;i++)
    {
        if(cbxList.Items[i].Checked)
        {
            s+=cbxList.Items[i].Text;
        }
    }
    HiddenField1.Value=s;好像就这样吧
      

  2.   

    string sum = "";
            for (int i = 0; i < CheckBoxList1.Items.Count; i++)
            {
                if (CheckBoxList1.Items[i].Selected)
                {
                    //sum = Convert.ToInt16(CheckBoxList1.Items[i].Value) + sum;
                    sum = CheckBoxList1.Items[i].Text.ToString() + ";" + HiddenField1.Value;                //sum = CheckBoxList1.SelectedItem.Text.ToString().Trim() + ";" + HiddenField1.Value;
                    //HiddenField1.Value = sum;
                }
            }
            HiddenField1.Value = sum;
        }这样也不对啊
      

  3.   

        protected void CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e)
        {        if(CheckBoxList1.SelectedItem.Selected)
            {
                sum = CheckBoxList1.SelectedItem.Text.ToString().Trim() + ";" + HiddenField1.Value;
                HiddenField1.Value = sum;        }
            else
            {
                string str[]=HiddenField1.Value.Split(";")
              int cnt=str.Length;
              for(int i=0;i<cnt;i++)
              {
                   if(str[i]==CheckBoxList1.SelectedItem.Text.ToString().Trim())
                   {
                        str[i]=string.Empty;
                   }
              }
             HiddenField1.Value=string.Join(";",str).Replace(";;",";");
            }    }写的有点粗糙...
      

  4.   

    string sum = "";
      for (int i = 0; i < CheckBoxList1.Items.Count; i++)
      {
      if (CheckBoxList1.Items[i].Selected)
      {
      //sum = Convert.ToInt16(CheckBoxList1.Items[i].Value) + sum;
      sum = CheckBoxList1.Items[i].Text.ToString() + ";" + HiddenField1.Value;  //sum = CheckBoxList1.SelectedItem.Text.ToString().Trim() + ";" + HiddenField1.Value;
      //HiddenField1.Value = sum;
      }
      }
      HiddenField1.Value = sum;
      }红色 你加到 后面干什么?
      

  5.   

     sum CheckBoxList1.Items[i].Text.ToString() + ";" + HiddenField1.Value;怎么变成 =  号 了?
      

  6.   

    //HiddenField1.Value = sum;
    楼主把这句注释去掉看一下
      

  7.   

    不然就把sum = CheckBoxList1.Items[i].Text.ToString() + ";" + HiddenField1.Value;
    改成  +=
      

  8.   

    sum = CheckBoxList1.Items[i].Text.ToString() + ";" + HiddenField1.Value;
    后面红色的也可以不要
    sum += CheckBoxList1.Items[i].Text.ToString() + ";" ;
      

  9.   

    北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】
      

  10.   

    北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】北京辦理專業英語四八級【QQ:740539971】
      

  11.   

    string s="";//初始化空字符串变量
    for(int i=0;i<cbxList.Items.Count;i++)  //遍历checkbox的项
    {
        if(cbxList.Items[i].Checked)   //判断是否选中
        {
            s+=cbxList.Items[i].Text;//选中了就获取文本,自定义拼接字符串。
        }
    }
    HiddenField1.Value=s;  //把完成好的字符串赋值给目标控件。
    代码有错误,但是意思还是有了。LZ 怎么就不会自己学习呢?
      

  12.   

    我试一下你这个,这个有意思
    [/Quote]有意思是什么意思?
      

  13.   

    因为我这个CheckBoxList值是根据他上面的DropDownList的值改变而变的。DropDownList可以多次 选择。但是每先一个值,CheckBoxList是变的,把每次 选 的CheckBoxList的值存起来?这中间就有一个,勾选或取消选择(已选择过的取消)
      

  14.   


    因为 我的值是变的,把选过的值存在value里,有可能多选,页面重加载。现在就是不能取消选择