Javascript IF语句在.click/.on(';click';)中不起作用
我不明白这为什么不起作用<当我单击带有该类名的复选框时,code>clickId被赋予值Javascript IF语句在.click/.on(';click';)中不起作用,javascript,jquery,Javascript,Jquery,我不明白这为什么不起作用clickId被赋予值access toggle all,因此它没有意义(至少对我来说) 我不知道你的问题是什么,但这不是你使用单引号或双引号,除非它们是不一致的开始和结束报价 我怀疑这与被单击的元素不仅仅具有类access toggle all有关,因此此比较失败: if (clickId == 'access-toggle-all') { 使用jquery执行此逻辑的正确方法是使用.is()或hasClass(): 或 使用.hasClass(“access tog
access toggle all
,因此它没有意义(至少对我来说)
我不知道你的问题是什么,但这不是你使用单引号或双引号,除非它们是不一致的开始和结束报价 我怀疑这与被单击的元素不仅仅具有类
access toggle all
有关,因此此比较失败:
if (clickId == 'access-toggle-all') {
使用jquery执行此逻辑的正确方法是使用.is()
或hasClass()
:
或
使用.hasClass(“access toggle all”)代替.attr(“class”)。如果同一元素上有两个类,该怎么办这个qeustion与wicket有什么关系?@RobertNiestroj我使用Java和wicket,而wicket弄乱了jQuery脚本。“好了,”MaheshSapkal,“我所有的类都由多个类组成。因此,使用
.hasClass
不是一个选项。我得到了类并删除了字符串中不需要的部分。没有迹象表明这与wicket或java有任何关系,除了你的评论说你使用java,wicket神奇地弄乱了你的JS。如果是wicket相关的,则显示一些与此“混乱”相关的wicket代码。你是对的。引号与此无关。另一方面,小门。。。我知道这是一种“更好的方法”,但我的代码示例只是一个起点。
if (clickId == 'access-toggle-all') {
$('input:checkbox').click(function (e) {
if ($(this).is('.access-toggle-all')) {
alert("if");
$('.access-toggle,.access-group-toggle').prop('checked', this.checked);
}
});
$('input:checkbox').click(function (e) {
if ($(this).hasClass('access-toggle-all')) {
alert("if");
$('.access-toggle,.access-group-toggle').prop('checked', this.checked);
}
});