JQuery .attr - 属性有两部分

时间:2014-04-03 19:31:02

标签: javascript jquery attributes

我正在尝试使用JQuery创建一个脚本来更改另一个脚本的属性。问题是我正在使用的两个属性有一个" - "在他们之间。这会触发意外的令牌错误。我的代码如下。

$( document ).ready(function() {
    $( "#test" ).attr({
        data-ids: "5sH7qfUk5T",
        data-fields: "firstName,lastName,industry, location"
    });
});

2 个答案:

答案 0 :(得分:3)

引用对象中带有连字符的键,因为连字符在对象键中无效

$( "#test" ).attr({
    'data-ids'    : '5sH7qfUk5T',
    'data-fields' : 'firstName,lastName,industry, location'
});

属性标识符类型用于将属性名称与属性描述符相关联。

属性标识符类型的值是表单(名称,描述符)的对,其中name是String,描述符是Property Descriptor值。

当你在字符串文字之外使用连字符时,它被解释为'减去'符号,因此在未引用的对象键中无效。

答案 1 :(得分:3)

这不是一个jquery /属性问题,它是一个对象文字问题。要使用带有特殊字符(如空格和短划线)的键,请将键用引号括起来。

$( document ).ready(function() {
    $( "#test" ).attr({
        "data-ids": "5sH7qfUk5T",
        "data-fields": "firstName,lastName,industry, location"
    });
});