我有以下javascipt行来选择网格中的tr:
$('#gridtable tr:gt(0):[name!="blank"]').click(function () {
这很好用,直到我将我的jquery版本升级到最新版本,现在这行生成了这个错误:
语法错误,无法识别的表达式:#gridtable tr:gt(0):[name!=“blank”] jquery.min.js:2
有人可以告诉我如何解决这个问题吗?
答案 0 :(得分:2)
您的选择器中有一个额外的冒号:
$('#gridtable tr:gt(0):[name!="blank"]')
// ^ Remove this
我建议您使用真正的CSS选择器,因为它很多更快:
$('#gridtable tr[name!="blank"]:not(:first-child)')
答案 1 :(得分:1)
奇怪的是,之前版本的jQuery没有引发同样的错误。您在选择器中遇到问题。如果您要查找name != "blank"
元素内<tr>
元素(不是第一行)的元素,请使用:
$("#gridtable tr:gt(0) [name!='blank']")
如果<tr>
元素还应包含name != "blank"
的过滤器,请使用:
$("#gridtable tr[name!='blank']:gt(0)")
因此attribute selector不需要冒号:
符号。