Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.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
jQuery:not()在表行上具有多个类_Jquery_Jquery Selectors - Fatal编程技术网

jQuery:not()在表行上具有多个类

jQuery:not()在表行上具有多个类,jquery,jquery-selectors,Jquery,Jquery Selectors,因此,基本上我使用jQuery来交替行颜色,方法是选择与表相关联的所有tr标记进行着色,然后相应地对它们进行着色。但是,在某些情况下,我不希望对某个tr进行着色,在这种情况下,交替着色应该跳过这些特定的表行。为此,我有一个名为“rowSkip”的类,我将该类应用于应该跳过着色的所有行 几个月来,我一直在工作,这是一种享受。。。然而,始终存在一个问题。有些情况下,我需要对一个表行应用多个类,但也不希望它着色。在这种情况下,jQuery的类选择器似乎有问题——要么就是我缺少了一些简单的东西 例如:

因此,基本上我使用jQuery来交替行颜色,方法是选择与表相关联的所有tr标记进行着色,然后相应地对它们进行着色。但是,在某些情况下,我不希望对某个tr进行着色,在这种情况下,交替着色应该跳过这些特定的表行。为此,我有一个名为“rowSkip”的类,我将该类应用于应该跳过着色的所有行

几个月来,我一直在工作,这是一种享受。。。然而,始终存在一个问题。有些情况下,我需要对一个表行应用多个类,但也不希望它着色。在这种情况下,jQuery的类选择器似乎有问题——要么就是我缺少了一些简单的东西

例如:

-->工作正常

-->不起作用(尽管存在“rowSkip”类,但仍会着色)

有人知道为什么会这样吗?除了抓住类attr的全部内容,按空间进行拆分,然后遍历它并检查是否存在rowSkip之外,我如何绕过它

代码如下:

$("Table.alternate tr:not(.rowSkip)").each(function() {
//if(!$(this).hasClass("rowSkip")) { //Also tried this, and several other renditions to no avail.

   $(this).addClass(i++ % 2 == 0 ? 'rowOff1' : 'rowOff2');
//}
});
谢谢, 标记

试试这个:

$("Table.alternate tr:not('[class*=rowSkip]')").each
如果你的课总是从rowSkip开始,那么你可以这样做

$("Table.alternate tr:not('[class^=rowSkip]')").each //looks for class names that starts with rowSkip

我建议您查看jQuery选择器构建,只针对这一点:奇数和:偶数。然后你有两种方法:

$('table.alternating tr:odd td').css('background-color','#eee');
或者使用一个类:

$('table.alternating tr:odd').addClass('odd');
还有一些CSS:

tr.odd td { background-color: #eee }

我还应该提到我尝试过:$($Table.alternate tr:not([class*=rowSkip])。每个结果都与原始结果相同problem@Mark-我想让你从一开始就把“Table.alternate”放在前面,我只是把它删掉了,因为我以为你知道这一点,但我更新了,第一行应该在“each”之前还有一个替补way@TStamper-是的,我想这就是你的意思,但我不确定,所以我两个都试了,但都没有成功。结果是,我像个傻瓜一样编辑了错误的代码块。我的原始代码一直工作得很好,只是我把它应用到了错误的表/类上——下面有一个低效且愚蠢的代码块,将相同的效果应用到了不同表的类上。唉,谢谢你的帮助,尽管如此:)谢谢你的提示。我不久前遇到了那个选择器构建。。当我有5分钟的时间时,我可能会改变它,但现在这就是工作:)