Jquery从具有数组/ JSON值的多个数据属性中检索数据

Posted

技术标签:

【中文标题】Jquery从具有数组/ JSON值的多个数据属性中检索数据【英文标题】:Jquery retrieving data from multiple data attributes with with array/JSON values 【发布时间】:2015-11-05 11:58:34 【问题描述】:

我的页面上有几个元素具有相同的数据属性,但值不同。元素的格式如下:

<input type="radio" data-toggle='["one","two","three"]'/>

现在,我想从所有这些元素中获取数据,我想我可以这样做:

var data = $('[data-toggle]').data("toggle");

但这仅输出第一个元素的数据,具有该数据属性的所有其他元素都将被忽略。

我猜这与 beeing 数组/JSON 格式有关,但我不清楚为什么会这样,以及我应该如何检索我的所有值。

如何从所有这些数据属性中获取所有数据?

这是一个说明我的问题的小提琴:http://jsfiddle.net/6u67o9oo/

【问题讨论】:

【参考方案1】:

您必须遍历每个元素:

$('[data-toggle]').each(function() 
    var data = $(this).data("toggle");

    //Do stuff
);

或者您可以使用.map 获取所有data-toggle 属性的二维数组:

var newArray = $('[data-toggle]').map(function() 
    return $(this).data("toggle");
).get();

【讨论】:

以上是关于Jquery从具有数组/ JSON值的多个数据属性中检索数据的主要内容,如果未能解决你的问题,请参考以下文章

如何使用pyspark将具有多个可能值的Json数组列表转换为数据框中的列

Phpmyadmin 仅接受来自具有多个输入值的 json 数组中的一个条目

使用 JQuery 从具有 JSON 值的表中选择行

jQuery创建具有选定属性和值的对象

如何在 json 序列化时使用 DefaultContractResolver 覆盖具有字符串值的复杂类型属性

具有来自数据库的多个值的 jQuery UI 自动完成