我有一个复选框,通过以下功能查看其他选项。麻烦的是,如果选中显示的复选框,即使隐藏后它们仍保持选中状态。如何最好地将取消选中的复选框绑定到与隐藏它们相同的功能?
这是许多类似的隐藏式隐藏分组之一。任何帮助表示赞赏!谢谢大家
请注意我在一个系统中执行此操作,我无法添加或更改任何HTML ID或类,这就是为什么有大量选定项目。
$("input[id='form_0009_fld_5-0']").click(function() {
if( $(this).is(':checked')) {
$("input[name='form_0009_fld_6-0'],label[for='form_0009_fld_6-0'],input[name='form_0009_fld_6-1'],label[for='form_0009_fld_6-1'],input[name='form_0009_fld_6-2'],label[for='form_0009_fld_6-2'],input[name='form_0009_fld_6-3'],label[for='form_0009_fld_6-3'],input[name='form_0009_fld_6-4'],label[for='form_0009_fld_6-4'],input[name='form_0009_fld_6-5'],label[for='form_0009_fld_6-5'],input[name='form_0009_fld_6-6'],label[for='form_0009_fld_6-6']").closest('.formField').show();
} else {
$("input[name='form_0009_fld_6-0'],label[for='form_0009_fld_6-0'],input[name='form_0009_fld_6-1'],label[for='form_0009_fld_6-1'],input[name='form_0009_fld_6-2'],label[for='form_0009_fld_6-2'],input[name='form_0009_fld_6-3'],label[for='form_0009_fld_6-3'],input[name='form_0009_fld_6-4'],label[for='form_0009_fld_6-4'],input[name='form_0009_fld_6-5'],label[for='form_0009_fld_6-5'],input[name='form_0009_fld_6-6'],label[for='form_0009_fld_6-6']").closest('.formField').hide();
}
});
答案 0 :(得分:1)
属性选择器可以匹配“starts with”,“ends with”和许多其他选项,因此不需要输入一堆类似的选择器吗?
要将复选框设置为“未选中”,如果未选中最初切换的复选框等,则使用prop('checked', false)
,并且使用change
事件可能比{{1}更好event:
click
答案 1 :(得分:1)
Jquery允许您链接函数,以便添加到hide
的末尾。
例如:
$('longselector').closest('.formField').hide().attr("checked", false);
使用其余的代码。
$("input[id='form_0009_fld_5-0']").click(function() {
if( $(this).is(':checked')) {
$("input[name='form_0009_fld_6-0'],label[for='form_0009_fld_6-0'],input[name='form_0009_fld_6-1'],label[for='form_0009_fld_6-1'],input[name='form_0009_fld_6-2'],label[for='form_0009_fld_6-2'],input[name='form_0009_fld_6-3'],label[for='form_0009_fld_6-3'],input[name='form_0009_fld_6-4'],label[for='form_0009_fld_6-4'],input[name='form_0009_fld_6-5'],label[for='form_0009_fld_6-5'],input[name='form_0009_fld_6-6'],label[for='form_0009_fld_6-6']").closest('.formField').show();
} else {
$("input[name='form_0009_fld_6-0'],label[for='form_0009_fld_6-0'],input[name='form_0009_fld_6-1'],label[for='form_0009_fld_6-1'],input[name='form_0009_fld_6-2'],label[for='form_0009_fld_6-2'],input[name='form_0009_fld_6-3'],label[for='form_0009_fld_6-3'],input[name='form_0009_fld_6-4'],label[for='form_0009_fld_6-4'],input[name='form_0009_fld_6-5'],label[for='form_0009_fld_6-5'],input[name='form_0009_fld_6-6'],label[for='form_0009_fld_6-6']").closest('.formField').hide().attr("checked", false);
}
});