Пробовал несколько разных методов, не добившись успеха, поэтому я надеюсь, что кто-то может помочь, я уменьшил код ниже до самой основной (и нефункциональной формы), в основном то, что мне нужно, у меня будут кучи строк таблицы так же, как показано ниже, но я хочу, чтобы каждое действие флажка запускало переключатель ближайшего набора из <span>
элементов.Как использовать «ближайшую» функцию jQuery с несколькими переключателями одних и тех же классов/id?
код ниже:
$(document).ready(function() {
$("input#change").change(function() {
$("span.disabled").toggle();
$("span.enabled").toggle();
$("span.pending").toggle();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<form action="page.php" method="post">
<table>
<!-- Row 1 -->
<tr>
<td>
<span class="pending" style="display:none;">PENDING</span>
<span class="disabled">DISABLED</span>
</td>
<td>
<input type="checkbox" name="statusArray[]" id="change" value="1" />
</td>
</tr>
<!-- Row 2 -->
<tr>
<td>
<span class="pending" style="display:none;">PENDING</span>
<span class="enabled">ENABLED</span>
</td>
<td>
<input type="checkbox" name="statusArray[]" id="change" value="2" />
</td>
</tr>
</table>
</form>
Верхний код работает, если есть только одна строка, но мне нужно, чтобы обрабатывать несколько строк.
Флажок всегда будет назван statusArray[]
и помечен как #change
Есть 3 пролетов, хотя каждая строка будет иметь только два в любое время, это будет span.enabled
, span.disabled
и span.pending
Есть способ использования jquery для активации toggle
только в текущей строке таблицы? Мне нужно выяснить что-то, что достигнет этого.
Любая помощь очень ценится.
ИД изменения для класса. если вы используете идентификатор, он будет обнаруживаться только в первой строке. –