Safari - 错误:语法错误,无法识别的表达式:输入[data-card-type =“payment-one

在mac Safari(以及旧版本的FF v.38及更早版本)上,我们收到以下错误:

Error: Syntax error, unrecognized expression: input[data-card-type="payment-one"

jQuery版本:https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js

$(this).change(function() {
  if($(this).val() != '' ) {
    $('input[data-card-type="'+paymentGroup+'"').val('').prop('disabled',true);

在Safari的控制台中,红色显示:错误:语法错误,无法识别的表达式:输入[data-card-type =“payment-one及其读取的错误:(匿名函数)

这有什么看起来与jQuery 2.1.4冲突,或者可能有其他不正确的东西?

回答(1)

3 years ago

这看起来像是一个Safari问题,但实际上它永远不应该有效 . 您需要关闭 [data-card-type=paymentGroup 语句,而不会结束 ] Safari会引发一个问题 . 我从经验得到的这个结论 . Chrome(我的主要开发浏览器)可以让它在没有一次窥视的情况下飞行,但Safari会中断(理所当然,它无效) .

用以下代码替换您的代码:

$(this).change(function() {
   if($(this).val() != '' ) {
     $('input[data-card-type="'+paymentGroup+'"]').val('').prop('disabled',true);