【发布时间】:2013-11-10 08:56:14
【问题描述】:
我有一个简单但麻烦的问题。我有一个<select> 字段和一些<div>s 和checkbox 组。当<select> 字段的值发生更改时,我想检查<div>s,如果他们有hidden 类,那么我想取消选中他们所有的复选框。
<select id="myselect">
<option value="1">some value 1</option>
<option value="2">some value 2</option>
</select>
<div id="skills-container-1" class="skills-container hidden">
<fieldset id="P2_SKILLS_1" class="checkbox_group">
<input type="checkbox" name="p_v16" value="2033"><br>
<input type="checkbox" name="p_v17" value="2034"><br>
<input type="checkbox" name="p_v18" value="2035"><br>
</fieldset>
</div>
<div id="skills-container-2" class="skills-container hidden">
<fieldset id="P2_SKILLS_2" class="checkbox_group">
<input type="checkbox" name="p_v19" value="2036"><br>
<input type="checkbox" name="p_v20" value="2037"><br>
<input type="checkbox" name="p_v21" value="2038"><br>
</fieldset>
</div>
在 javascript 中,在文档就绪函数中,在 <select> 字段的 .change 事件中,我执行以下操作:
if ($('.skills-container').hasClass('hidden')) {
$(this).find('input').removeAttr('checked');
}
显然它不起作用。我不确定我是否正确使用了 this 项目。可能this 指的是<select> 元素,而不是具有hidden 类的<div>。
有什么想法可以解决这个问题吗?谢谢!
【问题讨论】:
标签: javascript jquery html jquery-selectors this