Javascript 如何将函数应用于页面上的每个复选框?
我试图对页面上显示/隐藏Javascript 如何将函数应用于页面上的每个复选框?,javascript,jquery,html,Javascript,Jquery,Html,我试图对页面上显示/隐藏的每个复选框应用一个函数,这取决于复选框是否选中,此函数使页面上的所有切换 $("input[type=checkbox]").live('change', function() { if ($(this).is(':checked') == false) { $('#selectlist').hide(); } else { $('#selectlist').show(); } }); 我尝试了jquery的每一个函
的每个复选框应用一个函数,这取决于复选框是否选中,此函数使页面上的所有
切换
$("input[type=checkbox]").live('change', function() {
if ($(this).is(':checked') == false) {
$('#selectlist').hide();
} else {
$('#selectlist').show();
}
});
我尝试了jquery的每一个函数,就像这样,但似乎不起作用
$.each($("input[type=checkbox]").live('change', function() {
if ($(this).is(':checked') == false) {
$('#selectlist').hide();
} else {
$('#selectlist').show();
}
}));
我知道可以通过使用类
而不是输入[type=checkbox]
来实现这一点,但我希望避免这样做
如何让jquery更改用户单击的复选框的行为 如果您试图将事件处理程序绑定到所有验证输入[type=checkbox]
的元素,只需执行以下操作即可
$(document).on('change', "input[type=checkbox]", function() {
if (!this.checked) {
$('#selectlist').hide();
} else {
$('#selectlist').show();
}
});
无需在那里使用每个:如果jQuery集合包含多个元素,大多数jQuery函数都可以工作
请注意,我在那里使用了,而不是live
:在长期被弃用之后,live
已从jQuery的最新版本中删除
编辑:以下评论中的讨论导致此代码:
$(document).on('change', "input[type=checkbox]", function() {
$(this).next().toggle(this.checked);
});
如果您试图将事件处理程序绑定到验证input[type=checkbox]
的所有元素,只需执行以下操作即可
$(document).on('change', "input[type=checkbox]", function() {
if (!this.checked) {
$('#selectlist').hide();
} else {
$('#selectlist').show();
}
});
无需在那里使用每个:如果jQuery集合包含多个元素,大多数jQuery函数都可以工作
请注意,我在那里使用了,而不是live
:在长期被弃用之后,live
已从jQuery的最新版本中删除
编辑:以下评论中的讨论导致此代码:
$(document).on('change', "input[type=checkbox]", function() {
$(this).next().toggle(this.checked);
});
ID是唯一的,并且没有“页面切换上的所有
”,只能有一个?改为使用类,并向我们展示标记的外观
ID是唯一的,并且没有“页面切换上的所有
”,只能有一个?改为使用类,并向我们展示标记的外观 使用.on()而不是.live()。您使用的是哪个版本的jQuery?@MelanciaUK似乎无法使用.on()这可能是因为jQuery的版本吗?更新为1.9.1版本的jQuery,并使用.on()而不是.live(),在我选中/取消选中复选框时仍然存在切换所有选项的问题使用.on()而不是.live()您使用的是哪个版本的jQuery?@MelanciaUK似乎无法与.on()配合使用。这可能是因为jQuery的版本吗?更新为1.9.1版本的jQuery,并使用.on()而不是.live(),在我选中/取消选中复选框时仍然存在切换所有选项的问题。我将问题更新为使用类而不是id,这仍然可以切换页面上的所有内容,我不知道你想要什么。是否只显示/隐藏复选框后面的div?当复选框未选中时,仅显示div。我更新了我的问题以使用类而不是id,这仍然会切换页面上的所有选项我得不到你想要的。是否仅显示/隐藏复选框后面的div?当复选框未选中时,仅显示div