我的服务器端脚本中有一个循环,它在这种变体中输出了许多形式:
<form class="myForm">
<input type="checkbox" class="myCheckbox" />
<div>
<span class="myButton active">Button 1</span>
<span class="myButton">Button 2</span>
<div clas="myDiv">
<select class="mySelect">
<option></option>
...
<option></option>
</select>
</div>
</div>
</form>
来自.myCheckbox我需要能够访问/选择此表单中的嵌套2 .myButton,并访问嵌套的.mySelect。什么是正确的选择器?
请记住,我在页面上有很多这些表单,只想要我正在使用的表单。
我已经开始了:
$('body').on('change', '.myCheckbox', function () {
if ($(this).is(':checked'))
...
感谢。
答案 0 :(得分:0)
不应该像这样的工作:
var $form = $(this.form);
var $elements = $form.find('.myButton,.mySelect');
当然,你可以通过观察兄弟姐妹或穿越dom来以其他方式实现这一目标。但很可能你的表单会添加元素,或从中删除。查找共同的祖先(例如,表单元素)将有助于使您的应用程序可扩展,并且对于将来的更改更加健壮。