2011-05-02 59 views
0

我想獲取複選框選擇整個數據網格行。 但我只能得到綁定到複選框而不是其他的id的值。我的代碼如下:訪問數據網格在jquery中選擇的行值

function btnClick() { 
    var mytext 
    var gridView1Control = document.getElementById('<%= indivPrincipalGrid.ClientID %>'); 

    $('#<%= btnGetData.ClientID %>').click(function(e) { 
     $('input:checkbox[id$=CheckSelect]:checked', gridView1Control).each(function(item, index) { 

      var id = $(this).next('input:hidden[id$=hdID]').val(); 
      var nm = $(this).find('input:hidden[id$=hdID1]').val(); 
      alert(id); 
      alert(nm); 
     }); 
     return false; 

    }); 

我的網格如下:

<div> 
    <asp:Label ID="Label1" runat="server" Text="test"Font-Bold = "true"></asp:Label> 
    <asp:GridView ID="indivPrincipalGrid" runat="server" 
     AutoGenerateColumns="False"> 
    <Columns> 
    <asp:BoundField DataField = "Name"/> 
    <asp:TemplateField> 
    <ItemTemplate> 
    <asp:CheckBox ID="CheckSelect" runat="server" /> 
       <asp:HiddenField ID="hdID" runat="server" Value='<%# Eval("ID")%>'/> 
       <asp:HiddenField ID="hdID1" runat="server" Value='<%# Eval("Name")%>'/>   

    </ItemTemplate></asp:TemplateField></Columns></asp:GridView> 

    <asp:Button ID="btnGetData" runat="server" Text="Button" OnClientClick = "btnClick()" /> 

</div> 

回答

0

OK .. 我發現應該填充隱藏CNTRL功能沒有好的工作,所以我是在客戶端腳本越來越不確定。修復它解決了這個問題。感謝所有的幫助。

0

見註釋行,其中第一我覺得父母的話,我找到了控制。希望這將很好地工作

功能btnClick(){ 變種mytext的 變種gridView1Control =的document.getElementById( '<%= indivPrincipalGrid.ClientID%>');

$('#<%= btnGetData.ClientID %>').click(function(e) { 
    $('input:checkbox[id$=CheckSelect]:checked', gridView1Control).each(function(item, index) { 


     var id = $(this).next('input:hidden[id$=hdID]').val(); 
     //find the row which is tr in this case. and then find the hidden control 
     var parent=$(this).parent('tr'); 
     var nm = parent.find('input:hidden[id$=hdID1]').val(); 
     alert(id); 
     alert(nm); 
    }); 
    return false; 

}); 
+0

感謝您的回覆,但我仍然得到未定義的名稱警報 – user626309 2011-05-02 12:10:54