Uncaught Error: Syntax error, unrecognized expression: unsupported pseudo: label
Uncaught Error: Syntax error, unrecognized expression: unsupported pseudo: label
美好的一天,
升级 jQuery 到 v1.12.4 时遇到不受支持的伪造。
这是我的 jsp 代码:
<label name="role.label">maker</label>
这是我的 jQuery 代码:
$(':label[name="role.label"]').show();
在我升级 jQuery 之前,所有这些都工作正常。升级后,我正在点击 Uncaught Error: Syntax error, unrecognized expression: unsupported pseudo: label
。
发现解决方法是:
$('[name="role.label"]').show();
去掉前面的:label
。
但是,我有上千个类似的jQuery函数,请问还有其他解决办法吗?或者这是唯一的解决方案?
另外,还有一些地方不用改,比如input
:
$(':input[name="bankUserProfile.userGroup.role.name"]').val(data);
这个可以在旧 jQuery 和 v1.12.4 中使用。
我建议只使用 <label>
的标记名,如果选择器中有属性,也请保留这些属性
$('label[name="role.label"]').show();
除此之外,您似乎没有任何其他问题,可以按照 selectors api
中记录的伪选择器进行操作
请注意 :label
未记录
我遇到了同样的问题。根据研究,我去删除了标签。
美好的一天,
升级 jQuery 到 v1.12.4 时遇到不受支持的伪造。
这是我的 jsp 代码:
<label name="role.label">maker</label>
这是我的 jQuery 代码:
$(':label[name="role.label"]').show();
在我升级 jQuery 之前,所有这些都工作正常。升级后,我正在点击 Uncaught Error: Syntax error, unrecognized expression: unsupported pseudo: label
。
发现解决方法是:
$('[name="role.label"]').show();
去掉前面的:label
。
但是,我有上千个类似的jQuery函数,请问还有其他解决办法吗?或者这是唯一的解决方案?
另外,还有一些地方不用改,比如input
:
$(':input[name="bankUserProfile.userGroup.role.name"]').val(data);
这个可以在旧 jQuery 和 v1.12.4 中使用。
我建议只使用 <label>
的标记名,如果选择器中有属性,也请保留这些属性
$('label[name="role.label"]').show();
除此之外,您似乎没有任何其他问题,可以按照 selectors api
中记录的伪选择器进行操作请注意 :label
未记录
我遇到了同样的问题。根据研究,我去删除了标签。