我想使用以下方式设置标记的数据属性(例如 data-id =“..”):
$('<p>', {text: 'bla', data-?: '..'}).appendTo('#tagToAppendTo');
不幸的是,我无法在对象中定义自定义部分(此处标记为?)。有没有办法这样做,还是我需要求助于 .data()函数?
答案 0 :(得分:3)
如果它不是有效的标识符名称,您可以将该名称放在引号中:
$('<p>', {text: 'bla', 'data-id': '..'}).appendTo('#tagToAppendTo');
// --------------------^-------^
单引号或双引号均可。
有没有办法像这样做,还是需要求助于.data()函数?
data
没有设置属性。详情:jQuery .data() does not work, but .attr() does
答案 1 :(得分:0)
您可以使用.attr
选项设置自定义data-*
值。
下面的代码段。
$(document).ready(function(){
$('<p>', {text: 'bla'}).attr('data-test','sample-value').appendTo('#tagToAppendTo');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="tagToAppendTo"></div>
&#13;