我还在学习如何使用jQuery,但我偶然发现了一个块,无法通过它。如何将option
附加到select
data-*
属性?目前,我通过以下代码附加选项:
$('<option>').val(object.val).text(object.object.text).appendTo('#includedItems');
有没有办法在选项中添加data-*
?
答案 0 :(得分:4)
使用此 .attr() ,
$('<option>').attr('data-name','abcd');
或 .data()
$('<option>').data('name','abcd');
$('<option>').val(object.val).attr('data-name','abcd').text(object.object.text).appendTo('#includedItems');
注意: .data()
将数据存储在DOM对象中,而不是.attr()
时的Html属性。
答案 1 :(得分:3)
只需向链中添加attr()
或data()
来电:
attr()
属性,请使用data-*
:
$('<option>').val(object.val).text(object.object.text).attr('data-x', 'y').appendTo('#includedItems');
^ call attr()
使用data()
使用jQuery的内部数据存储系统(不使用属性)
$('<option>').val(object.val).text(object.object.text).data('x', 'y').appendTo('#includedItems');
^ call data()
答案 2 :(得分:1)
您可以使用:
$('<option data-smdata="value"></option>').val(object.val).text(object.object.text).appendTo('#includedItems');
答案 3 :(得分:0)
您可以使用.attr("data-lala",val)
在元素上创建属性,或.data("lala",val)
如果您不介意该信息是否隐藏在DOM中(检查可能无法显示正确的值)。
答案 4 :(得分:0)
您可以使用:
null