JavaScript创建具有输入名称和值的数组

时间:2015-05-28 05:39:53

标签: javascript arrays input

我正在制定这个问题: 是否可以根据所有输入类型文本中使用的.name.value数据自动生成数组?

这是手动执行的参考:

var foo = [];
foo['bar'] = 'foo data';
foo['foo'] = 'bar data';

我有这个想法......它有效......

var foo[];
for (var i = 0; i < document.getElementsByTagName('input').length; i++)
{
    foo[document.getElementsByTagName("input")[i].name] = document.getElementsByTagName("input")[i].value;
};

任务是让它自动运作。 获取输入的.name并获取该输入的.value

我正在编辑问题以便在此处发布...当我想出如何制作它时。我决定留下这里的参考资料,我想这对某人有用。

欢迎反馈。

1 个答案:

答案 0 :(得分:0)

您的代码足够合理,除了两件事:

  • 使用对象而不是数组。
  • 仅创建一次输入列表。

所以你可以这样做:

var values = {};
var inputs = document.getElementsByTagName('input');
for( var i = 0; i < inputs.length; i++ ) {
    values[inputs[i].name] = inputs[i].value;
}