Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/458.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IF语句在.click/.on(';click';)中不起作用_Javascript_Jquery - Fatal编程技术网

Javascript IF语句在.click/.on(';click';)中不起作用

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

我不明白这为什么不起作用<当我单击带有该类名的复选框时,code>clickId被赋予值
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);
    } 
});