2015-04-07 5 views
0

Я пытался удалить JQuery DataTables выбранные строки с помощьюиндекс строки не обновляется при использовании строк(). Каждый(). Удалить()

table.rows('.selected').every(function(){ 
    this.remove() 
}); 

Но я обнаружил, что, когда одна строка удаляется, индекс строки не обновляется, поэтому это приведет к хаосу. Итак, есть ли удобный способ удалить выбранные строки из таблицы или мне нужно обновить индекс строки вручную?

Я хотел бы применить некоторые другие операции на каждой строке, кроме удаления, так что я не хочу использовать

table.rows('.selected').remove(); 
+0

может быть, у меня есть недостаток знаний, есть функция под названием 'every', не должна быть' each'? – renakre

+0

@erkaner [каждый] (https://datatables.net/reference/api/rows() .every()) был введен, возможно, в версии 1.1.6.6. – lil

ответ

-1

Когда я удалить строки номер индекса обновляется. Попробуйте удар кода.

Щелкните по строке. Он будет предупреждать свой индекс, а затем удалять себя. Попробуйте щелкнуть строку после нее, которая теперь должна иметь тот же индекс, что и удаленная строка.

$('table tr').click(function(){ 
 
    alert(this.rowIndex); 
 
    $(this).remove(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<table> 
 
    <tr> 
 
    <td>Click to remove</td> 
 
    </tr> 
 
    <tr> 
 
    <td>Click to remove</td> 
 
    </tr> 
 
    <tr> 
 
    <td>Click to remove</td> 
 
    </tr> 
 
    <tr> 
 
    <td>Click to remove</td> 
 
    </tr> 
 
    <tr> 
 
    <td>Click to remove</td> 
 
    </tr> 
 
</table>

Смежные вопросы