将数据或数组索引附加到锚标记
我有一些javascript / jquery代码,用一堆列表项动态填充无序列表。 在列表项中我有一个链接,我想将一些数据与生成的链接相关联,如下所示:
var thing1 = { name: 'My Object' }; var thing2 = { name: 'My Other Object' }; var li = $('
'); var aSel = $('' + thing1.name + '
Add Deal'; li.append(aSel); li.append(add); $('#sidebar').append(li); //This is in a loop so the same thing would happen with thing2, etc
会像这样生成HTML:
因此,如果用户单击第一个Add Deal链接,我想在脚本的其他位置使用thing1
数据。 如果点击了第二个链接,我想使用thing2
数据。
我要走的路径涉及一个数组和一些对我来说不太合适的代码。 我想我错过了一些微不足道的东西。
您可以使用jQuery.data函数将“事物”附加到每个链接。 在var aSel =
行之后:
$('a', aSel).data('thing', thing1); // Select the anchor tag inside of // aSel and attach thing1 to it
然后在单击锚标记时,使用以下命令检索它: var thing = $(this).data('thing');
您可以使用HTML5自定义数据属性(data- *)来实现您想要的效果。
特别关注使用JavaScript使用数据属性。