метод индекса jQuery - PullRequest
       2

метод индекса jQuery

0 голосов
/ 14 июля 2011

Я знаю, что в jQuery много информации об index ().Но мой случай сложен, и мне нужна помощь.

<table>
 <tbody>
  <tr>
   <td>abc</td>
   <td><input type="checkbox"/></td>
  </tr>
  <tr>
   <td>def</td>
   <td><input type="checkbox"/></td>
  </tr>
 </tbody>
</table>
<table>
 <tbody>
  <tr>
   <td>ghi</td>
   <td><input type="checkbox"/></td>
  </tr>
  <tr>
   <td>jkl</td>
   <td><input type="checkbox"/></td>
  </tr>
 </tbody>
</table>

Мне нужен индекс элемента "tr" в текущем "tbody", где я только что установил флажок.

Ответы [ 2 ]

5 голосов
/ 14 июля 2011

Если ваш код находится в обработчике, сделайте следующее:

$('table input[type="checkbox"]').change( function() {
    var idx = $(this).closest('tr').index();
});

Пример: http://jsfiddle.net/bA9dx/


Или если вы говорите, что вынужно индексировать строку из числа всех строк в таблице, сделать это:

var rows = $('table tr');

$('table input[type="checkbox"]').change( function() {
    var idx = rows.index( $(this).closest('tr') );

    alert( idx );
});

Пример: http://jsfiddle.net/bA9dx/1/

0 голосов
/ 14 июля 2011

вы можете использовать:

$('input').click(function(){
    var i = $(this).closest('tr').index();
    //i is the index
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...