jQuery数据给我未定义

时间:2011-03-06 14:58:31

标签: javascript jquery html undefined

我正在jQuery中尝试新的数据函数,但无法使其正常工作。

以下是我用于测试的一些代码:

HTML

<ul>
    <li data-test="list">List item</li>
    <li data-test="list">List item</li>
</ul>

<ul>
    <li data-name="sida">oko</li>
</ul>

JS

var test = $('li').data('name');
alert(test);

jsFiddle上的同样的事情: http://jsfiddle.net/w95mY/1/

我希望从警报中获得“sida”。我发现如果删除第一个列表就可以了。这是为什么?我该如何解决?

1 个答案:

答案 0 :(得分:7)

考虑告诉jQuery如何找到一个元素。例如,告诉它查找具有li属性的任何data-name元素:

var test = $('li[data-name]').data('name');
alert(test);

或者你可以告诉它寻找最后的li

var test = $('li').last().data('name');
alert(test);

两者都显示带有文字“sida”的警报。