HTML 5的data属性未定义

data attribute of HTML 5 is undefined

本文关键字:属性 未定义 data HTML      更新时间:2023-09-26

在我的JSP中,在标题部分,我有这样的:

<script type="text/javascript">
    $(document).ready(function() {
        var labelfooter = jQuery("#myId").data("mylabel");
        var htmlContent = labelfooter +" society ";
        var divContent = jQuery("#myId");
        divContent.text(htmlContent);
    });
</script>

然后,在body部分,我有:

<div id="myId" data-mylabel="Hello" ></div>

结果,在浏览器中,我得到"undefined society"而不是"Hello society"

有什么想法吗?

这里的问题是您的名字中有大写字母。这在jQuery选择器中意味着一些不同的东西。有两种方法可以解决。

<div id="d1" data-fooBar="asdf1"></div>
<div id="d2" data-foo-bar="asdf2"></div>
JavaScript

var x1 = $("#d1").data("foobar"); //selects the camel case one
var x2 = $("#d2").data("fooBar"); //looks for the dash

JSFiddle示例