【问题标题】:Attribute selector is not working (syntax error, unrecognized expression)属性选择器不起作用(语法错误,无法识别的表达式)
【发布时间】:2016-12-16 14:31:44
【问题描述】:

我有一个函数,它通过名为“ps_data”的 SSJS 遍历传递的数组,其中一个键值对包含一个“urlencoded”值,并且由于某种原因它不断破坏我的 Jquery 代码。

我需要按原样传递这个值。

$(document).ready(function () {
  $.each(ps_data, function (key, value) {
    $("input:radio[name="+key+"][value="+value+"]").prop("checked", true);
    console.log(key+ ":" + value);
  });
});

我收到此错误,即使该值完全符合我的需要并且它是 URL 编码的。当我只使用常规字符串时,它只能使用 guid 的值。

Syntax error, unrecognized expression:

input:radio[name=guid][value=QyveK1%40vUnHeTQiwCn0IWGdEpmNqbUHL6cITnxlQHgI%3d]

【问题讨论】:

    标签: javascript jquery html jquery-selectors syntax-error


    【解决方案1】:

    您缺少[name=”value”] selector 的引号。

    这解决了你的问题:

    $('input:radio[name="' + key + '"][value="' + value + '"]')
    

    =>

    $('input:radio[name="guid"][value="QyveK1%40vUnHeTQiwCn0IWGdEpmNqbUHL6cITnxlQHgI%3d"]')
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-20
      • 2013-02-26
      相关资源
      最近更新 更多