如何将数据添加到jquery创建的元素?

时间:2012-09-23 22:26:08

标签: javascript jquery object

向新元素添加数据:

var ComBox = $('<div></div>').addClass('commentBox');
$.data(ComBox, 'ChannelID', 5);
$('body').append(ComBox);

尝试获取数据时,结果为undefined ..

var cID = $('.commentBox').data('ChannelID');
console.log('cID : '+cID );

2 个答案:

答案 0 :(得分:5)

替换它:

$.data(ComBox, 'ChannelID', 5);

有了这个:

ComBox.data('ChannelID', 5);

它使用this function

最佳实践说明,您最好在jQuery对象前加上$含义:
ComBox =&gt; $comBox

答案 1 :(得分:0)

$.data需要 DOM 元素,而不是 jQuery 对象。使用:

$.data(ComBox[0], 'ChannelID', 5);

或更方便的.data()函数,如@gdoron所建议的那样:

ComBox.data('ChannelID', 5);

<强> DEMO