jQuery获取input提交的数组的值
在我们开发中,input中name的名字,如果使用name="jQueryArray[]"的形式,最后取值的时候是一个数组。例如:
<input type="text" name="jQueryArray" value="1111"/><br/>
<input type="text" name="jQueryArray" value="1221"/><br/>
<input type="text" name="jQueryArray" value="1331"/><br/>
这时候使用:
$("input[name='jQueryArray']");
可以将所有name为jQueryArray的input框的值取出来,并且可以for循环将所有的值取出来,但是对于习惯使用jQuery中的val()来取值的我们却发现,这里如果使用
$("input[name='jQueryArray']")[0].val();
来取值会报错。
这是因为这个时候取出来的是一个input对象,所以我们可以使用原生js来取值,也就是:
$("input[name='jQueryArray']")[0].value;
当然,如果您非要使用val()来取值也是可以的,但是这里就需要将input对象转换为jQuery对象:
$($("input[name='ajaxOrderId']")[0]).val();
当然还可以
$("input[name^='jQueryArray']").each(function(i){
if(i == 2) {
alert(this.value);
}
});
利用jQuery的each()函数来进行循环,获取其中的值。注意的是这里的this是原生DOM对象。