jquery — переключение с переменными в переполнении стека

$last_itteration = false;
while($row = mysqli_fetch_array($result)){

if ($row['egenskaps_navn'] == $last_itteration) {

} else {
echo "<h3>".$row['egenskaps_navn']."</h3>";
}
echo "<span id='verdi_"  .$row['verdi_id']."'>".$row['verdi_tekst']."</span><br />";

$last_itteration = $row['egenskaps_navn'];

}$(document).ready(function(){

$('h3').click(function(){
$('span').toggle();
});

Я собрал данные из базы данных. Идея заключается в том, что я хочу переключать значения для отображения из списка свойств (помечены h3). Цикл while печатает свойство только в том случае, если оно еще не было напечатано, и связанные значения. В настоящее время они скрыты в CSS с помощью «span {display: none;}». Теперь переключатель будет работать только для всех значений, а не для связанных. Есть ли подобный способ сделать это в jquery или javascript, как я сделал это в коде PHP? Чтобы выбрать только одно свойство (h3) для переключения, так как я не хочу переключать их все сразу.

2

Решение

использование nextUntil('h3') переключать все между нажатыми h3 и следующий h3:

$('h3').on('click', function() {
$(this).nextUntil('h3').toggle();
});

Вот скрипка

1

Другие решения

Это запускает самый близкий промежуток к нажатой h3

$(document).ready(function(){

$('h3').click(function(){
$(this).next('span').toggle();
});
});

или как упомянуто

 $(this).nextUntil('h3','span').toggle();

второй аргумент заставляет функцию выбирать только промежутки

0

Найти следующее span текущего h3 на click событие на h3 и применить toggle к этому. Попробуйте с —

$('h3').click(function(){
$(this).next('span').toggle();
});
0
По вопросам рекламы [email protected]