5

サンプルテーブルがあります

<table class="table">
  <tr value="1" class="side-link">
    <td>one</td>
    <td>two</td>
  </tr>
 <tr value="2" class="side-link">
    <td>one</td>
    <td>two</td>
  </tr>
</table>

選択されたtr on click関数の値を取得したい。私がこれまでに試したこと

$(".table").on('click','.side-link',function(e){
    e.preventDefault();
    var id = $(this).attr('value');
    alert(id);
}); 

問題は、クリックしたそれぞれの「tr」にこれをアドレス指定できないことです。代わりに、の値を取得します.table。誰でもここで問題を解決できますか? 本当に感謝しています!ありがとう :)

注: ajax を使用して tr を置き換える必要があり、クリック機能を使用するだけでは新しい要素が認識されないため、(クリック時に) 必要です!!

Jquery バージョン 1.9.1

4

5 に答える 5

0

さて、これを見て Tr 値または Td 値を取得します。

HTML コード:

<table class="table" border='1'>
    <tr value="1" class="side-link">
        <td>one</td>
        <td>two</td>
        <td>three</td>
    </tr>
    <tr value="2" class="side-link">
        <td>1</td>
        <td>2</td>
        <td>3</td>
    </tr>
</table>

jQuery コード:

$(".table").on('click', 'tr', function () {
    var trValue = $(this).attr('value');
    var tdValue = $(this).children('td').map(function (index, val) {
            return $(this).text();
        }).toArray();
        // all td value with comma seprated
    alert(tdValue);
    // current tr attr value
    alert(trValue);
});

ライブデモ (JsFiddle)

于 2013-11-07T10:11:20.390 に答える
0

HTML5 の data 属性をよく使用します。これが、HTML5 で data 属性が導入された正確な理由です。また、jquery の最新バージョン (> 1.6) を使用していることを確認してください.on。jquery 1.6 の後にのみ導入されました。

HTML

 <table class="table">
   <tr data-value="1" class="side-link">
     <td>one</td>
     <td>two</td>
   </tr>
 <tr data-value="2" class="side-link">
    <td>one</td>
    <td>two</td>
 </tr>
</table>

jQuery

$(".table").on('click','.side-link',function(e){
  e.preventDefault();
  var id = $(this).data('value');
  alert(id);
});
于 2013-11-07T10:06:09.720 に答える