Извините, если заголовок не имеет смысла, в основном у меня есть несколько строк таблицы, таких как:
<table>
<tr class="odd">
<td><button class="button_clicked">Hide row</button></td>
</tr>
<tr class="even">
<td><button class="button_clicked">Hide row</button></td>
</tr>
<tr class="odd">
<td><button class="button_clicked">Hide row</button></td>
</tr>
<tr><td class="notes"</td></tr>
</table>
У каждого tr есть класс, нечетный - белый фон и даже серый фон,Я использую jquery, который говорит, что если нажата кнопка в одном из тд, то скрыть всю строку tr, где была нажата кнопка.Некоторые строки таблицы имеют дополнительный символ tr сразу после него для заметок, поэтому jquery обнаруживает, присутствует ли он также, если это так, также удаляет этот tr.Но проблема сейчас в том, что если я скрываю tr с серым фоном, появится строка таблицы под ним, и теперь у меня есть 2 строки таблицы, которые белого цвета и нарушают четный / нечетный дизайн строк таблицы.Поэтому я попытался написать дополнительный код ниже, чтобы выполнить дополнительную проверку, но он останавливает работу скрипта.Это не дает мне ошибку, это просто показывает сценарий как прерванный, какие-либо предложения?
$('.button_clicked').click( function(e) {
var row = $(this).closest('tr');
// hide this row first
row.hide();
// next, get the next TR, see if it is a notes row, and hide it if it is
var nxt = row.next();
if (nxt.hasClass('show_notes')) {
nxt.hide();
}else
{
if (nxt.hasClass('odd')) {
nxt.attr('class','even');
}else
{
nxt.attr('class','odd');
}
}
e.preventDefault();
});