我如何从data属性中获取其中一个值

时间:2014-05-05 07:26:59

标签: jquery data-url

我有一个具有多个值的数据属性。我如何从中获得一个价值?

<div data-url='{"header-url" : "src/one.html","footer-url" : "src/two.html","content-url" : "src/three.html"}'></div>

$(document).ready(function() {
 var headerContent = $('div').attr('data-url');
 console.log(headerContent)
});

http://jsfiddle.net/taGBL/19/

2 个答案:

答案 0 :(得分:4)

使用 bracket notation

$(document).ready(function() {

    var headerContent = $('div').data('url');

    console.log(headerContent['header-url']);
    console.log(headerContent['footer-url']);
    console.log(headerContent['content-url']);

});

Fiddle

答案 1 :(得分:1)

看到你可以使用javascript中提供的 Bracket Notation ,你也不需要在这里使用.attr() jQuery方法,因为你有{{1在该属性中添加前缀,这样您就可以使用适用于您的data-* .data()方法:

jQuery

或者如果您想获取所有值,则可以使用$(document).ready(function() { var headerContent = $('div').data('url'); console.log(headerContent['header-url']); // <--with bracket notation. }); 方法:

$.each()

Fiddle with $.each() method.