js中如何获取input框中的数组
时间: 2024-02-04 13:01:47 浏览: 133
jquery获取input输入框中的值
如果要获取input框中的数组,首先需要确定数组是以什么方式传递给后端的。常见的情况有两种:
1. 数组作为input框的value值:这种情况下,可以使用`document.getElementById()`或者`document.querySelector()`方法来获取input框元素,然后使用该元素的`value`属性来获取数组的值。例如:
```html
<input type="text" id="inputId" value="[1,2,3,4]">
```
```javascript
var inputElement = document.getElementById("inputId");
var inputArray = JSON.parse(inputElement.value);
console.log(inputArray); // [1, 2, 3, 4]
```
在这个例子中,`inputElement.value`返回的是字符串`"[1,2,3,4]"`,需要使用`JSON.parse()`方法将其转换为对应的数组类型。
2. 多个input框分别传递数组的不同元素:这种情况下,可以使用`document.getElementsByName()`方法来获取所有同名的input框元素,然后逐个获取它们的value属性,将它们组合成数组。例如:
```html
<input type="text" name="inputName" value="1">
<input type="text" name="inputName" value="2">
<input type="text" name="inputName" value="3">
<input type="text" name="inputName" value="4">
```
```javascript
var inputElements = document.getElementsByName("inputName");
var inputArray = [];
for (var i = 0; i < inputElements.length; i++) {
inputArray.push(inputElements[i].value);
}
console.log(inputArray); // ["1", "2", "3", "4"]
```
在这个例子中,`document.getElementsByName("inputName")`返回的是一个NodeList对象,包括了所有name属性为`"inputName"`的input框元素。然后使用一个循环逐个获取它们的`value`属性,将它们添加到一个数组中。需要注意的是,这里获取到的数组元素都是字符串类型,可以根据需要使用`parseInt()`等方法将其转换为对应的类型。
阅读全文