从旧版本的 jQuery (1.10.2) 升级到 jQuery 3.1.1 后,我遇到了错误“语法错误,无法识别的表达式:label[for=]”。我还将 jQuery.validate 插件升级到版本 1.15.1。
这类似于其他“语法错误,无法识别的表达式:标签...”类型的问题,但我相信它的独特性足以证明它自己的条目是正确的。多次在线搜索此消息并没有引导我找到我偶然发现的解决方案(如下)。
从下拉字段中选择是/否值后单击表单上的任何字段时会发生错误,这会稍微改变 UI。
最佳答案
在我的例子中,错误是在 jQuery 验证器的 onfocusout 中触发的。这是因为失去焦点的元素/字段没有 ID(错误消息几乎清楚地表明了这一点,如果你仔细想想的话)。
在一个相对简单的表单上,失去焦点的字段是一个不重要的触发器(通过 jQuery 类选择器)。该字段本身不需要任何验证。
向该字段添加一个 ID 解决了这个问题。
另一种解决方案是使用忽略:jQuery 验证插件的功能。
关于javascript - jQuery 验证语法错误,无法识别的表达式 : label[for=],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42403041/