我正在尝试选择不是传递给函数的元素的所有类.Tag
这是我得到的:
$("a.tag").filter(":visible").not("\"[id='" + aTagID + "']\"").each(
function place(index, element) {
log(" checking element " + element.id);
});
aTagID传递给此函数,并且是我想从选择中排除的调用元素的ID。 log是一个只执行console.log的函数。
以下是我在控制台中获得的内容:
Uncaught Error: Syntax error, unrecognized expression: "[id='t1']"
答案 0 :(得分:3)
尝试使用过滤器中的:not
以及使用ID选择器#
:
$("a.tag").filter(":visible:not(#" + aTagID + ")").each(function() {
答案 1 :(得分:2)
不应该:
$("a.tag").filter(":visible").not("\"#id='" + aTagID\")").each(function() {
.not() jQuery方法需要一个选择器。我不相信"[id='t1']"
会起作用。
或者您可以尝试使用:not选择器:
$("a.tag").filter(":visible:not(#" + aTagID + ")").each(function() {
答案 2 :(得分:2)
只需在一个选择器中执行(#
可以用来代替id的属性选择器):
$("a.tag:visible:not(#" + aTagID + ")").each(