2012-10-10 103 views
0

我有一個具有以下TD表:選擇自定義屬性與jQuery

<td> 
     <div id="spcheck"> 
     <div id="check" 
       data-1='<%# Eval("sth1") %>' 
       data-2='<%# Eval("sth2") %>' 
       data-3='<%# Eval("sth3") %>'> 
       <asp:CheckBox ID="chk1" runat="server"/> 
      </div> 
     </div> 
</td> 

這是最後一個。它有自定義的屬性,你可以看到。如果複選框不起作用,我需要獲取值data-1,data-2和data-3。我有如下因素代碼,獲取每個TR,但是我需要去的TD內,並獲得屬性值:

$('#ListView2_itemPlaceholderContainer tbody tr').each(function() { 
       // I GET THE <TR> 
       $(this).find('input:checkbox:checked').each(function() { 
        // I NEED THIS CODE 
        }); 
       }); 
      }); 

在此先感謝。

回答

2

因爲屬性的DIV,你需要找到DIV第一,並獲得div的屬性。您可以使用在DIV的.attr()讓他們

$(this).find('input:checkbox:checked').each(function() { 
     var $closestDiv = $(this).closest('div'); // Find the div 

     var $data1 = $closestDiv.attr('data-1'); // data-1 
     var $data2 = $closestDiv.attr('data-2'); // data-2 
     var $data3 = $closestDiv.attr('data-3'); // data-3 
    }); 
+0

謝謝!!我選擇了這個答案。 – anmarti

+0

@senyortoni ..不客氣 –

1
$('#ListView2_itemPlaceholderContainer tbody tr').each(function() { 
    $(this).find('input:checkbox:checked').each(function() { 
      var dataElement = $(this).closest('[data-1]'); 

      var data1 = dataElement.data('1'); 
      var data2 = dataElement.data('2'); 
      var data3 = dataElement.data('3'); 
     }); 
    }); 
});