使用jquery检索gridview行值

时间:2013-07-25 00:08:34

标签: jquery asp.net

您好我有以下网格视图

 <asp:GridView ID="GridView3" runat="server" AutoGenerateColumns="False">
            <Columns>
                <asp:TemplateField>
            <HeaderTemplate>
                <asp:CheckBox runat="server" ID="chkAll" />
            </HeaderTemplate>
            <ItemTemplate>
                <asp:CheckBox runat="server" ID="chkEmployee" />
            </ItemTemplate>
        </asp:TemplateField>
                <asp:TemplateField HeaderText="Id">
                    <ItemTemplate>
                        <asp:Label ID="lblId" runat="server" Text='<%# Eval("Id") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Company">
                    <ItemTemplate>
                        <asp:Label ID="lblCompany" runat="server" Text='<%# Eval("Company") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>              
            </Columns>
        </asp:GridView>

我正在使用以下jquery代码迭代所选复选框的gridview并检索每行的列值。代码将遍历每一行,但不能选择值。

 $(document).ready(function () {
           $("#submit").click(function () {
               alert("clicked");
               $("#<%=GridView3.ClientID%> input[id*='chkEmployee']:checked").each(function () {

               var values=$(this).find("td:Company")+$(this).find("td:Id");
               });
           });
       });

以下行是不行的。

 var values=$(this).find("td:Company")+$(this).find("td:Id");

请帮忙!谢谢

2 个答案:

答案 0 :(得分:1)

我为你做了样品。

$('[type="button"]').live("click", function () {
  $('tr [type="checkbox"]:checked').parent().parent().each(function () {    
     if ($(this).find('input[id*="lblCompany"]').length > 0) {
   alert($(this).find('input[id*="lblCompany"]').val() + "---" +    $(this).find('input[id*="lblId"]').val())
}

});

 });

FIDDLE Demo

希望它能帮到你解决问题。

答案 1 :(得分:0)

<asp:GridView ID="gvUserInfo" runat="server" >  
 <HeaderStyle BackColor="#df5015" Font-Bold="true" ForeColor="White" />  
 <Columns>  
    <asp:TemplateField>  
    <ItemTemplate>  
             <asp:CheckBox ID="chkChild" runat="server" />  
           <asp:Label ID="lblId" runat="server" Text='<%# Eval("Id") %>'></asp:Label>  
            <asp:Label ID="lblCompany" runat="server" Text='<%# Eval("Company") %>'> </asp:Label>  
           <asp:HiddenField ID="hdnId" runat="server" Value='<%#Eval("Id") %>' />  
         <asp:HiddenField ID="hdnCompany" runat="server" Value='<%#Eval("Company") %>' />  
       </ItemTemplate>  
    </asp:TemplateField>  
    </Columns>  
   </asp:GridView>  
   </div>  
    <input type="button" id="btnGet" value="Get Selected Values" /><br /><br />  
    <b>Select UserNames:</b><label id="lbltxt"/>


   <script type="text/javascript">      
$(document).ready(function () {  
    $('#btnGet').click(function () {  
        var hdntxt = '';  
        $("input[name$=chkChild]:checked").each(function () {  
            hdntxt += "," + $(this).siblings("input[name$=lblId]").val()  
        });  
        $('#lbltxt').text(hdntxt.substring(1, hdntxt.length))  
    });  
});  
      </script>

希望它会有所帮助