我这里有一个清单
<ul id="demo2" data-name="demo2">
<li data-value="here">here</li>
<li data-value="are">are</li>
<li data-value="some...">some</li>
<!-- notice that this tag is setting a different value :) -->
<li data-value="initial">initial</li>
<li data-value="tags">tags</li>
</ul>
每个li项目都有自定义数据属性。在JQuery上,如何获得具有data-value属性的每个li元素的所有值?我想得到他们的价值。
但我的这段代码似乎没有起作用
$('#view-tags').click(function(){
$('li[data-value]').each(function(){
alert($(this).data("value"));
})
});
jsfiddle上的整个代码:http://jsfiddle.net/Zn3JA/
答案 0 :(得分:10)
你非常接近。您可以使用jQuery的.data()
方法来读取以data-
开头的属性。因此,在您的情况下.data("value")
,因为您的属性为data-value="some"
。
这应该这样做:
$('li[data-value]').each(function(){
alert($(this).data("value"));
});
这也是一个工作小提琴: http://jsfiddle.net/nuphP/
答案 1 :(得分:4)
$(this).attr('data-value')
也应该有用。
答案 2 :(得分:1)
您可以在您的情况下使用:
jQuery(this).data("value");
以便检索值。
答案 3 :(得分:1)
$(this)
引用当前的li
元素,因此您会收到提醒元素。
您可以尝试其他人提出的建议,即$(this).data("value")
答案 4 :(得分:0)
var value = $ (this) .attr ('date value');
获取属性值并存储变量值
alert (value);
此警告后变量值
ZADD "projects:views" 17 PROJECT_NAME1 13 PROJECT_NAME2 21 PROJECT_NAME3