如何从文本框输入到数组?

时间:2013-06-06 08:13:27

标签: javascript html

您好我正在使用此代码段将实际值传递给数组。但是我想把从文本框传递给数组的值怎么做呢?

html代码:

<input type="text" name="cost" value=" ">
<input type="text" name="cost" value=" ">
<input type="text" name="cost" value=" ">

javascript代码:

multipliers = [5, 6, 5];

而不是5,6,5我应该从textfield获取值如何做到这一点?

3 个答案:

答案 0 :(得分:1)

Fiddle

输入数组是合适的:

<form name="myForm">
<input type="text" name="cost[]" value="1">
<input type="text" name="cost[]" value="2">
<input type="text" name="cost[]" value="3">
</form>

使用Javascript:

var list = document.myForm.elements['cost[]'];
var multipliers = [];

for(var i=0; i<list.length; i++)
{
    multipliers.push(list[i].value);    
}

console.log(multipliers);

答案 1 :(得分:0)

您可以使用document.querySelectorAll,因为您似乎没有为您的元素提供ID。

var nodes = document.querySelectorAll('[name=cost]'), // get all elements with name = cost
    values = [], 
    i = 0;
for(i=0; i<nodes.length; i++) 
    values.push(parseInt(nodes[i].value, 10));
console.log(values);

<强> Demo

答案 2 :(得分:-2)

<form name="myForm">
      <input type="text" name="cost[]" value="1">
      <input type="text" name="cost[]" value="2">
      <input type="text" name="cost[]" value="3">
   </form>


  var allElements= document.myForm.elements['cost[]'];
    var arr= [];

      for(var i=0; i<allElements.length; i++)
        arr.push(allElements[i].value);