如何从DOM元素中检索数据并将其推入数组?

时间:2015-01-29 22:22:56

标签: javascript jquery arrays

我想遍历并检索在我的选择菜单选项中绑定的属性数据,并将每个选项中的数据推送到数组中。

我的选择菜单的ID为"列表"并且下面的jquery代码片段将输入字段中的值绑定为id为ip4。

$('#List :selected').data({"onHandInv":$("#ip4").val()})

对于选择菜单List中的每个选项,我想要检索并推送到数组中的onHandInv值。我已经尝试了以下for循环,但它不起作用。请帮忙吗?

var Inv = [];
   for (j=0;j<document.getElementById("List").options.length;j++){
     Inv.push($("List option")[j]).valueof("onHandInv")  
    }

1 个答案:

答案 0 :(得分:0)

如果你正在使用jQuery

var Inv = $.map($('#List option'), function(el) {
                return $(el).data('onhandinv');
          });

请注意,数据属性始终为小写

在简单的JS中

var Inv     = [];
var options = document.getElementById("List").options;

for (var j=0; j < options.length; j++) {
    Inv.push( options[j].getAttribute('data-onHandInv') );
}

请注意,getAttribute对于使用jQuery的data方法(valueof方法都没有)的数据集不起作用,因为它没有设置属性,它在内部存储数据