jQuery验证语法错误,无法识别的表达式:label [for =]

时间:2017-02-22 21:56:25

标签: javascript jquery

从旧版本的jQuery(1.10.2)升级到jQuery 3.1.1后,我遇到错误“语法错误,无法识别的表达式:label [for =]”。我还将jQuery.validate插件升级到版本1.15.1。

这类似于其他“语法错误,无法识别的表达式:标签......”类型的问题,但我认为这些问题的独特性足以证明其自身的进入。在线多次搜索此消息并没有让我找到我偶然发现的解决方案(下图)。

从下拉字段中选择“是/否”值后,单击窗体上的任何字段时会发生错误,这会稍微改变UI。

1 个答案:

答案 0 :(得分:2)

就我而言,错误是在jQuery验证器的onfocusout中触发的。这是因为失去焦点的元素/字段没有ID(如果你认为它足够困难,错误信息几乎就会清楚地表明这一点。)

在一个相对简单的形式上失去焦点的领域是一个不重要的触发器(通过jQuery类选择器)。该领域本身并不需要任何验证。

向字段添加ID可解决问题。

另一种解决方案是使用jQuery Validation插件的ignore:特性。