【发布时间】:2017-05-09 15:34:30
【问题描述】:
我觉得我被困在最简单的事情上,但我似乎找不到解决问题的方法。
我有一个 json 数组,我想通过这样的 div 上的数据属性将它传递给我的 javascript:
<div id="scope" data-json='["apple","pear"]'></div>
我的问题是我只能使用除 .data('json') 之外的任何东西来获得该值。
这是我要找的东西:https://jsfiddle.net/Wurielle/p17d71m0/1/
您可以在控制台中看到使用 .data() 进行日志记录会返回一个 json 数组(这正是我需要的),但使用 .attr() 进行日志记录只会返回纯文本。 不幸的是,由于多种原因,我不能使用 .data()。
我考虑过使用 JSON.stringify 和 JSON.parse,但我无法获得与 .data() 选项相同的结果。
除了 .data() 之外,有没有办法从数据属性中获取 json?
【问题讨论】:
-
你回答了...你需要使用 attr("data-json") 和 JSON.parse()... 看起来很奇怪你不能使用 data()
-
使用 JSON.parse? console.log(JSON.parse($('#scope').attr('data-json')));
-
使用
dataSet...? -
Mathijs Rutgers 感谢您的回答,它确实有效!我之前确实尝试过,但我用我的值记录文本,这就是为什么我认为它不能正常工作。傻我哈哈!不管怎样,谢谢!还有@epascarello,是的,它非常具体..
标签: javascript jquery json