从其parnet复选框中检查复选框值 [英] checking checkbox values from its parnet checkbox

查看:105
本文介绍了从其parnet复选框中检查复选框值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的代码页



this is my code page

public partial class BindingCheckboxlist : System.Web.UI.Page
{
    bis_ obj = new bis_();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            DataSet ds = new DataSet();
            ds = obj.get_Title();
            if (ds.Tables[0].Rows.Count > 0)
            {
                chklist.DataSource = ds.Tables[0];
                chklist.DataTextField = "Title";
                chklist.DataValueField = "Id";
                chklist.DataBind();
            }
        }

    }
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        string Id = "";
        int var = 0;
        for (int i = 0; i < chklist.Items.Count; i++)
        {
            if (chklist.Items[i].Selected)
            {
                if (var == 0)
                {
                    Id += chklist.Items[i].Value;
                    var = var + 1;

                }
                else
                    Id += "," + chklist.Items[i].Value;


            }
            lblId.Text = "You Are selected:" + Id;
        }
        string Name = "";
        for (int i = 0; i < chklist.Items.Count; i++)
        {
            if (chklist.Items[i].Selected)
            {
                Name += chklist.Items[i].Text + ",";
            }
            lblName.Text = "Your Selected citys are:" + Name;
        }
        //string Id1 = "";

        //chklist2.DataSource = chklist.SelectedValue;
        //chklist.DataTextField = chklist.selel;
        //chklist2.DataValueField = chklist.SelectedValue;


        //chklist2.DataBind();
      
        for(int i=0;i<chklist.items.count;i++)>
        {
            if (chklist.Items[i].Selected)
            {
            }
            
            

        }

    }
}







这是设计页面:






This is designing page:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="BindingCheckboxlist.aspx.cs" Inherits="BindingCheckboxlist" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <table align="center">
    <tr><td>
    
    <asp:CheckBoxList runat="server" ID="chklist"><br />
    </td>
    </tr>
    <tr>
    <td>
    <asp:Button runat="server" ID="btnSubmit" Text="Submit" onclick="btnSubmit_Click" />
    <br />
    </td>
    </tr>
    <tr>
    <td>
    <asp:Label runat="server" ID="lblId"><br />
    
    <asp:Label runat="server" ID="lblName">
    </td>
    </tr>
    <tr>
    </tr>
    <td>
    <asp:CheckBoxList runat="server" ID="chklist2">
    
    </td>
    </table>
    </div>
    </form>
</body>
</html>







这里我的要求是如果我从第一个复选框列表值中选择然后将那些相同的值绑定到第二个复选框;




here my requirement is if i selectd from first check box list values then bind those same values to second checkbox;

推荐答案

你好,

请试试这个,



Hello,
Please try this,

<asp:checkboxlist runat="server" id="chklist" xmlns:asp="#unknown">
    </asp:checkboxlist>
    <asp:button runat="server" id="btnSubmit" text="Submit" xmlns:asp="#unknown">
        onclick="btnSubmit_Click" />
    <asp:label runat="server" id="lblId"></asp:label>
    <asp:label runat="server" id="lblName"></asp:label>
    <div runat="server" id="NewCheckBox"></div></asp:button>







SqlConnection cn = new SqlConnection(@"");
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            string query = @"SELECT * FROM Products";
            SqlDataAdapter ad = new SqlDataAdapter(query, cn);
            DataSet ds = new DataSet();
            ad.Fill(ds);
            if (ds.Tables[0].Rows.Count > 0)
            {
                chklist.DataSource = ds.Tables[0];
                chklist.DataTextField = "ProductName";
                chklist.DataValueField = "Id";
                chklist.DataBind();
            }
        }
    }
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        string Id = "";
        int var = 0;
        for (int i = 0; i < chklist.Items.Count; i++)
        {
            if (chklist.Items[i].Selected)
            {
                if (var == 0)
                {
                    Id += chklist.Items[i].Value;
                    var = var + 1;
                }
                else
                    Id += "," + chklist.Items[i].Value;
            }
            lblId.Text = "You Are selected:" + Id;
        }
        string Name = "";
        for (int i = 0; i < chklist.Items.Count; i++)
        {
            if (chklist.Items[i].Selected)
            {
                Name += chklist.Items[i].Text + ",";
            }
            lblName.Text = "Your Selected citys are:" + Name;
        }
        List<int> _intid = Id.TrimEnd(',').Split(',').ToList().ConvertAll<int>(s => Convert.ToInt32(s));
        if (_intid.Count() > 0)
        {
            foreach (var item in _intid)
            {
                string query = @"SELECT * FROM Category where PId=" + item;
                SqlDataAdapter ad = new SqlDataAdapter(query, cn);
                DataSet ds = new DataSet();
                ad.Fill(ds);

                CheckBoxList chklst2 = new CheckBoxList();

                chklst2.DataSource = ds.Tables[0];
                chklst2.DataTextField = "CategoryName";
                chklst2.DataValueField = "PId";
                chklst2.DataBind();

                NewCheckBox.Controls.Add(chklst2);
            }
        }
    }
</int></int>


这篇关于从其parnet复选框中检查复选框值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆