Javascript 在JQuery中选择自定义数据属性

Javascript 在JQuery中选择自定义数据属性,javascript,jquery,html,custom-data-attribute,Javascript,Jquery,Html,Custom Data Attribute,我这里有一张单子 <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

我这里有一张单子

<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>

jsfiddle上的全部代码:

您已经非常接近了。可以使用jQuery的方法读取以
data-
开头的属性。所以在您的例子中,
.data(“value”)
,因为您的属性是
data value=“some”

这应该做到:

$('li[data-value]').each(function(){
     alert($(this).data("value"));
});

这里还有一把工作小提琴:

您可以在您的案例中使用:

 jQuery(this).data("value");
为了检索值。

$(此)
引用当前的
li
元素,因此您会收到元素警报

您可以尝试其他人的建议,即
$(this).data(“value”)

也应该有效

   $('#view-tags').click(function(){
        $('li[data-value]').each(function(){
        var value = $(this).attr('data-value');
            alert(value);
        })
}); // this work normally
获取属性值并存储变量值

var value = $ (this) .attr ('date value');
alert (value);
在此警告之后,变量值

var value = $ (this) .attr ('date value');
alert (value);

它仍然不工作,我已经更新了我的代码。它只会给我一个undefined@user962206它应该有用!我在我的答案中添加了一个提琴,它显示了代码的作用。你有什么JS错误吗?你是在引用jQuery库吗?@user962206我删除了一些无法调用的JS代码,因为fiddle缺少tagit.JS文件。所以这段代码工作得很好。问题出在代码的其他地方。您可能还有其他一些JS错误导致执行中断。当我将警报放在document.ready函数的第一行时,它会工作,但当我将其放在底部某个位置时,它就不再工作了。这是非常重要的odd@user962206这可能是因为中间的一些代码会抛出一个错误,从而停止执行。当jQuery代码放在末尾时,它永远不会运行。找到那个错误,代码就会正常工作。例如,您确定
.tagit()
按预期工作吗?它仍然不工作。我已更新了代码。请重新检查我的问题您正在使用哪个版本的jquery?确定。。id为
视图标记的元素是什么类型的?我没有看到。我正在为JQuery使用一个名为tagitWell的插件,正确地包含了github的tagit库,并且修复了您刚刚破坏了演示的事实,现在我没有收到任何错误。你的问题到底是什么@Jamiec我无法得到每个li的“数据值”的值。好吧,正如我现在两次演示的那样,它工作得很好。偶尔,偶尔。不知道我还能为此贡献多少,抱歉!请注意,这略有不同:它将在元素中创建一个真实属性。如果使用
.data()
,则该值将存储在DOM节点中,但其行为与HTML属性不同;这可能不是你想要的;但需要注意的是(例如,CSS可以通过
.attr()
)设置的真实属性进行选择)。请在您的答案中添加一些解释。包括对代码的一些解释,您的答案如何帮助或解决问题?