<asp:DataGrid ID="DataGrid1" runat="server" Width="100%">
    <Columns>
        <asp:BoundColumn DataField="id" HeaderText="Id"></asp:BoundColumn>
        <asp:TemplateColumn HeaderText="选择">
            <ItemTemplate>
                <asp:CheckBox ID='ckb' runat="server" />
            </ItemTemplate>
        </asp:TemplateColumn>
    </Columns>
</asp:DataGrid>
请问模版列中的CheckBox怎么获取到第一列中的文字,即id的值?

解决方案 »

  1.   

    你是说点击CheckBox获取,还是选择后,发送的时候获取?
      

  2.   

    在弄个button 把id绑定到commandarument上 在行事件里 找到这button  在e.commandarument就这ID  你把button隐藏就行了哦
      

  3.   

    <asp:TemplateColumn HeaderText="">
    <ItemTemplate> <input type="checkbox" runat="server" id="chkSelect" value='<%#DataBinder.Eval(Container.DataItem,"BH")%>'  NAME="chkSelect"/>
    </ItemTemplate>
    </asp:TemplateColumn>
      

  4.   

    <asp:TemplateField HeaderText="&lt;input type=checkbox name='selectall' onClick='SelectAll(document.form1)'&gt;全选">
    <HeaderStyle Font-Bold="True" HorizontalAlign="Center" Width="8%"></HeaderStyle>
    <ItemStyle HorizontalAlign ="Center" /> <ItemTemplate> <asp:CheckBox id="CheckBox1" runat="server"  ToolTip='<%#Eval("Id")%>' </asp:CheckBox>
    <asp:HiddenField ID="Hf_Id" Value='<%#Eval("Id")%>' runat="server" />
    </ItemTemplate>
    </asp:TemplateField>
      

  5.   

    <asp:DataGrid ID="DataGrid1" runat="server" Width="100%">
        <Columns>
            <asp:BoundColumn DataField="id" HeaderText="Id"></asp:BoundColumn>
            <asp:TemplateColumn HeaderText="选择">
                <ItemTemplate>
                    <asp:CheckBox ID='ckb' runat="server"  value=' <%#DataBinder.Eval(Container.DataItem,"id")%>'/>
                </ItemTemplate>
            </asp:TemplateColumn>
        </Columns>
    </asp:DataGrid>
      

  6.   

    <asp:DataGrid ID="DataGrid1" runat="server" Width="100%"> 
        <Columns> 
            <asp:BoundColumn DataField="id" HeaderText="Id"> </asp:BoundColumn> 
            <asp:TemplateColumn HeaderText="选择"> 
                <ItemTemplate> 
                    <asp:CheckBox ID='ckb' runat="server"  value=' <%#DataBinder.Eval(Container.DataItem,"id")%>'/> 
                </ItemTemplate> 
            </asp:TemplateColumn> 
        </Columns> 
    </asp:DataGrid> 
      

  7.   

    楼主可以放一个隐藏的控件 将值放在那里面
    然后在再判断该行该列的checkbox有没有被选中
      

  8.   


     for (int i = 0; i < this.GridView1.Rows.Count; i++)
                {
                    CheckBox cbox = (GridView1.Rows[i].FindControl("CheckBox1")) as CheckBox;
                    if (cbox.Checked == true)
                    {
                        sb += (GridView1.Rows[i].FindControl("显示id那列的Id") as Label).Text + ",";
                    }
                }
      

  9.   

    不太明白啊
    http://blog.csdn.net/xianfajushi/archive/2008/11/30/3413317.aspx