Я хочу улучшить некоторые наборы полей с возможностью показа / скрытия их содержимого после нажатия на ярлык.
В настоящее время HTML выглядит следующим образом:
<fieldset>
<legend>Fieldset 1</legend>
<!-- Some input, p, div, whatever -->
</fieldset>
<fieldset>
<legend>Fieldset 2</legend>
<!-- Some input, p, div, whatever -->
</fieldset>
Таким образом, при щелчке одного fieldset legend
все, кроме легенды щелчка родительского набора полей, должно переключаться.
Я пытался использовать это:
$("fieldset *:not(legend)").hide();
$("fieldset legend").click(function(){
$(this).nextAll().slideToggle();
});
Но он ничего не делает (даже не скрывает содержимое). Конечно, я хочу переключить представление только на том наборе полей, по которому щелкнул пользователь, поэтому он должен каким-то образом определить, какая легенда была нажата, а затем скрыть содержимое соответствующих наборов полей.
Конечно, я мог бы дать им все идентификаторы и написать код для каждого набора полей, но это было бы излишним, поскольку он всегда был бы одинаковым, я думаю, должен быть способ сделать эту функциональность универсальной для любого количества наборов полей. .
У кого-нибудь есть изящная идея?