在哪里检查动态创建的复选框的状态

时间:2013-05-10 13:00:09

标签: asp.net

你好我的程序我需要创建动态的checkboxlist with items - 来自数据库。

问题是当单击一个按钮我应该从cn获取文本时只选中复选框,我应该将用户重定向到另一个页面

我很难确定控件的宽度是否已检查

  1. 如果我在添加后立即检查

    所以,如果我写

  2.   

    if(mycheckbox.Items [s] .Selected == true)

    这一行之后

      Page.FindControl("form1").Controls.Add(mycheckbox);
    

    他们没有被检查,所以这将永远是假的)

    1. 关于回发事件(单击按钮) - 我们知道回发事件动态控件不再存在)
    2. 这是我的代码

      protected void ddlNumberTourists_SelectedIndexChanged(object sender, EventArgs e)
      {
          int numTourists = Convert.ToInt32(ddlNumberTourists.SelectedItem.Text);
          for (int i = 0; i < numTourists; i++)
          {
          string connectionString = "Server=localhost\\SQLEXPRESS;Database=excursion;Trusted_Connection=true";
              string query =
        "SELECT Extra_Charge_ID, Excursion_ID, Amout, Extra_Charge_Description FROM EXTRA_CHARGES WHERE Excursion_ID=" + mynewstring;
              SqlConnection conn = new SqlConnection(connectionString);
              SqlCommand cmd = new SqlCommand(query, conn);
      
              try
              {
                  conn.Open();
                  SqlDataReader rd = cmd.ExecuteReader();
                  int s = 0;
                  while (rd.Read())
                  {
                      mycheckbox.ID = "chkblextracharge" + i.ToString() + s.ToString();
                      mycheckbox.Items.Add(rd["Extra_Charge_Description"].ToString());
                      Page.FindControl("form1").Controls.Add(mycheckbox);
                      s++;
                  }
      
      
              }//End of try
      
              catch (Exception ex)
              { }
      
      
          }//end of for
      

2 个答案:

答案 0 :(得分:0)

我在我的在线测验引擎中使用jQuery实现了客户端检查(演示:http://webinfocentral.com):该代码片段的摘录如下:

var _rows = $(this).find('tr');

for (i = 0; i < _rows.length; i++) {

    // find out if checkbox is checked
    _checked = $(_rows[i]).find('input:checkbox').is(':checked');
}

答案 1 :(得分:0)

        conn.Open();
        SqlDataReader rd = cmd.ExecuteReader();
        int s = 0;
        mycheckboxList = new CheckBoxList();
        mycheckboxList.ID = "chkblextracharge" + i.ToString();
        while (rd.Read())
        {
            ListItem LI = new ListItem(rd["Extra_Charge_Description"].ToString(), s.ToString());
            LI.Selected = rd["Selected_Criteria"] == "TRUE";
            mycheckboxList.Items.Add(LI);

            s++;
        }
        Page.FindControl("form1").Controls.Add(mycheckboxList);