Jquery / javascript对象重复来自each()函数的值

时间:2014-08-27 20:21:55

标签: javascript jquery

我有3 input[name=alc_val] 我试图在对象中获得它们的价值。 我这样做了:

var alc_val = new Array();
$("input[name=alc_val]").each(function(i){
    alc_val[i]= $(this).val();
});

console.log(alc_val);
  • 我期待这个:["111", "111", "111"]
  • 我发现了这个:["111", "111", "111", "111", "111", "111"]

为什么会如此?如何获得预期的输出?

2 个答案:

答案 0 :(得分:1)

我在这里重现了这个场景:http://jsfiddle.net/u8juqycz/

<input name="alc_val" value="test1"/>
<input name="alc_val" value="test2"/>
<input name="alc_val" value="test3"/>

var alc_val = new Array();
$("input[name=alc_val]").each(function(i){
    alc_val[i]= $(this).val();
});

console.log(alc_val);

有效。所以你必须有超过3个文本框

答案 1 :(得分:0)

它在这里工作:Jsfiddle 也许你有6个输入。


HTML

<input name="alc_val" value="111">
<input name="alc_val" value="111">
<input name="alc_val" value="111">

的js

var alc_val = new Array();
$("input[name=alc_val]").each(function(i){
  alc_val[i]= $(this).val();
});

console.log(alc_val);