升级到2.1后,jQuery表达式抛出错误

时间:2015-06-28 19:00:44

标签: jquery

我最近从jQuery 1.7切换到2.1。现在,以下表达式 - 之前有效 - 会引发语法错误(无法识别的表达式):

find("#[class*='item_id']:contains('_row_key')")

(原始代码的缩短版)

有人知道为什么吗? 感谢

编辑:

这是完整的代码行

var rowKey = $("[id*='FormView']").find("#[class*='item_id']:contains('_row_key')").parent().children(".item_value").html();

1 个答案:

答案 0 :(得分:2)

我想对于旧版选择器的支持,您可能需要jQuery Migrate 1.2.1,这将有助于您同时拥有较新的jQuery功能和新功能!

只需在jQuery之后添加以下行。

<script src="http://code.jquery.com/jquery-migrate-1.2.1.js"></script>

<强>更新

您可以将代码更改为:

find("*[class*='item_id']:contains('_row_key')");
// ---^
// Or simply...
find("[class*='item_id']:contains('_row_key')");

我猜#本身就错了!它没有任何意义。