前台以下是DataList中嵌套的checkbox
 <input type="checkbox" id="chkSelect" runat="server" value='<%# DataBinder.Eval(Container.DataItem, "Id")%>' NAME="chkSelect"/>  <INPUT  id="HdnSelectedValues" type="hidden"  name="HdnSelectedValues"  runat="server">后台CS
现在的问题是如何在后台的Insert按钮中取得checkbox选中的值并insert到数据库中?

解决方案 »

  1.   

    有没有考虑用js取值呢?然后赋值隐藏域,后台Insert按钮取 隐藏域的值就可以了。
      

  2.   

    你的insert怎么写的》在什么位置?
    你可以遍历
    for(i=0;i<DataList1.Items.Count;i++)
    {
      
    HtmlInputCheckBox X = DataList1.Items[i].FindControl("chkSelect") as HtmlInputCheckBox;
    X.Value就是
     
     }
      

  3.   

    我按照你的方法运用了,
    for(i=0;i<DataList1.Items.Count;i++)
    {HtmlInputCheckBox chkbox = DataList1.Items[i].FindControl("chkSelect") as HtmlInputCheckBox;
    但是,程序执行到if (chkbox.Checked == true)
                        {
    时报错,chkbox有问题,未将对象引用设置到对象的实例。
      

  4.   

    主要问题是找不到DataList1的checkbox
      

  5.   

    主要问题是找不到DataList2的checkbox
      

  6.   


    前台 <asp:DataList ID="dl1" runat="server" RepeatColumns="1">
                                                        <ItemTemplate>
                                                            <tr>
                                                                <td>                                                           
                                                                   <table id="Table2" border="0">
                                                                        <tr>
                                                                           <td >                                                                    
                                                                                <%# DataBinder.Eval(Container.DataItem,"Name") %>
                                                                                :
                                                                            </td>
                                                                        </tr>
                                                                    </table>
                                                                    <table id="Table3">
                                                                        <tr>                                                                      
                                                                            <td>
                                                                                <table id="Table5">
                                                                                    <tr>
                                                                                        <td>
                                                                                            <asp:DataList ID="dl2" runat="server" RepeatColumns="3">
                                                                                                <ItemTemplate>
                                                                                                  <input type="checkbox" id="chkSelect"  runat="server" value='<%# DataBinder.Eval(Container.DataItem, "Id")%>' NAME="chkSelect"/>
                                                                                                    <%# GetMethod(DataBinder.Eval(Container.DataItem, "Name").ToString(), DataBinder.Eval(Container.DataItem, "WorkerNo").ToString())%>
                                                                                                </ItemTemplate>
                                                                                            </asp:DataList>
                                                                                        </td>
                                                                                    </tr>
                                                                                </table>
                                                                            </td>
                                                                        </tr>
                                                                    </table>
                                                                </td>
                                                            </tr>
                                                        </ItemTemplate>
                                                    </asp:DataList>
    后台
    protected void btnSave_Click(object sender, System.EventArgs e)
    {
    for(i=0;i<dl2.Items.Count;i++)
    {HtmlInputCheckBox chkbox = dl2.Items[i].FindControl("chkSelect") as HtmlInputCheckBox;}
    }
    但是,程序找不到dl2的checkbox
      

  7.   

    <asp:DataList ID="dl1" runat="server" RepeatColumns="1">
                                                        <ItemTemplate>
                                                            <tr>
                                                                <td>                                                           
                                                                   <table id="Table2" border="0">
                                                                        <tr>
                                                                           <td >                                                                    
                                                                                <%# DataBinder.Eval(Container.DataItem,"Name") %>                                                                          
                                                                            </td>
                                                                        </tr>
                                                                    </table>
                                                                    <table id="Table3">
                                                                        <tr>                                                                      
                                                                            <td>
                                                                                <table id="Table5">
                                                                                    <tr>
                                                                                        <td>
                                                                                            <asp:DataList ID="dl2" runat="server" RepeatColumns="3">
                                                                                                <ItemTemplate>
                                                                                                  <input type="checkbox" id="chkSelect"  runat="server" value='<%# DataBinder.Eval(Container.DataItem, "Id")%>' NAME="chkSelect"/>
                                                                                                    <%# GetMethod(DataBinder.Eval(Container.DataItem, "Name").ToString(), DataBinder.Eval(Container.DataItem, "WorkerNo").ToString())%>
                                                                                                </ItemTemplate>
                                                                                            </asp:DataList>
                                                                                        </td>
                                                                                    </tr>
                                                                                </table>
                                                                            </td>
                                                                        </tr>
                                                                    </table>
                                                                </td>
                                                            </tr>
                                                        </ItemTemplate>
                                                    </asp:DataList>
    后台
    protected void btnSave_Click(object sender, System.EventArgs e)
    {
    for(i=0;i<dl2.Items.Count;i++)
    {HtmlInputCheckBox chkbox = dl2.Items[i].FindControl("chkSelect") as HtmlInputCheckBox;}
    }
    但是,程序找不到dl2的checkbox
      

  8.   

    本帖最后由 net_lover 于 2012-03-06 10:03:27 编辑
      

  9.   

    非常感谢!
    然后就是用HdnSelectedValues取checkbox的值的问题了
    前台
    <INPUT id="HdnSelectedValues" type="hidden" name="HdnSelectedValues" runat="server">
    请问在后台的Insert按钮中如何用HdnSelectedValues取得checkbox选中的值并insert到数据库中?
      

  10.   

    HdnSelectedValues.Value
    插入数据库就是sql语句