如何在对象属性名称中使用连字符?

Joh*_*911 6 javascript

$('.class').data({data-toggle: "whatever-value", data-target: "#id"});

我不断收到语法错误 -

我原本试过.attr然后切换到,.data因为我认为这将解决它.

有人可以帮助解决这个简单问题吗?

谢谢

log*_*yth 6

如果要设置/更新data-*属性,则在设置属性时需要引号:

$('.class').attr({"data-toggle": "whatever-value", "data-target": "#id"});
Run Code Online (Sandbox Code Playgroud)

否则就像解析它一样

data-toggle
Run Code Online (Sandbox Code Playgroud)

含义

data - toggle
Run Code Online (Sandbox Code Playgroud)

减去两个变量.

您还可以使用.data()

$('.class').data({"toggle": "whatever-value", "target": "#id"});
Run Code Online (Sandbox Code Playgroud)

但这并没有分配data-*属性,它只是将数据存储在jQuery的存储系统中.