[英]JQuery: Create an array made out of the data- attributes of my select options
我有一个选择倍数有一些选项。 每个选项都有多个数据属性。 我想创建一个包含其每个数据值的数组。 例如,我的代码看起来很像这样:
<select multiple id='my_select'>
<option data-my_id='1' data-my_parent='3' data-my_name='option1'>My first option</option>
<option data-my_id='2' data-my_parent='3' data-my_name='option2'>My second option</option>
<option data-my_id='3' data-my_parent='3' data-my_name='option3'>My third option</option>
</select>
我正在寻找的结果需要是这样的:
[1,3,option1], [2,3,option2], [3,3,option3]
我已经研究过如何使用每个选项的数据属性值创建一个数组,给我这个[1,2,3],但是我没有成功地提出我需要的东西。
非常感谢!
var array = $("#my_select > option").map(function() {
return [$.map($(this).data(), function(v) {
return v;
})];
}).get();
演示: http : //jsfiddle.net/nQ6mE/
var arr = [];
$('#my_select option').each(function(){
var $this = $(this);
arr.push([ $this.data('my_id'), $this.data('my_parent'), $this.data('my_name') ]);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.