Я делаю это в PHP: ++$r%2?'odd':'even'
для применения полосатых строк ..
<tr class="<?=++$r%2?'odd':'even'?>"><td>...</td></tr>
Но когда я получаю корыто записей $.ajax
-request, я возвращаю результат:
$('#table_selected tbody').empty(); // empty the table
$.ajax({ // fetch new data and insert into new rows
...
success: function(data){
$.each(data, function(i, array){
$('#table_selected tbody').append('<tr><td>'+array['name']+'</td></tr>');
});
}
});
То, что я хотел бы сделать, - добавить odd
/even
-класс в <tr>
-элемент на каждую другую строку - например, я делаю в php.
Есть ли аналогичный способ достижения этого в js/jqyery?
Я прочитал этот ответ: How do I add odd/even class only for table rows which haven´t had odd/even class yet?, и я думаю, что это начало того, что я хочу достичь, но не знает, как работать решение в мой код:
$("table tbody tr:nth-child(odd)").addClass("odd");
$("table tbody tr:nth-child(even)").addClass("even");
'$ ("# table_selected TBODY тр: п-й ребенок (нечетные)"). AddClass ("нечетный"); $ ("# table_selected tbody tr: nth-child (even)"). addClass ("even"); 'после каждого цикла –
В чем используются классы' odd' и 'even'? Если это чисто стилизация, возможно, существует только CSS-решение, которое устраняет необходимость в PHP и JavaScript. –
Существует только способ CSS, но он не работает в IE8 или ниже. например в CSS поместите tr: nth-child (нечетный) {background-color: # 333;} – MarkP