我有x个输入字段,其中class ='agency_field'。如何创建一个包含此类所有字段值的JS数组?
使用jQuery,这会产生语法错误:
$( “agency_field”)。每个(函数(指数) {agencies [] = $(this).val(); });
答案 0 :(得分:8)
您可以使用.map
代替,这可能更适合您的目的:
var values = $(".agency_field").map(function() {
return this.value;
}).get();
alert(values.join(","));
答案 1 :(得分:0)
var agencies = [];
$(".agency_field").each(function(index) { agencies.push($(this).val()); });
答案 2 :(得分:0)
您正在为每次迭代创建一个新数组。尝试在每次调用之前实例化一个数组,并在每次迭代时添加到数组中。
答案 3 :(得分:0)
var arr = []; $(".agency_field").each(function(index) { arr.push($(this).val()); });
arr
最终将包含您想要的内容。
答案 4 :(得分:0)
您的代码应略微更改为:
var agencies = [];
$(".agency_field").each(function(index) {
agencies.push($(this).val());
});
答案 5 :(得分:0)
您需要先创建一个数组,然后将每个值添加到该数组中:
var agencies = [];
$(".agency_field").each(function(index) { agencies.push($(this).val()) });
答案 6 :(得分:0)
你已经习惯了像php这样的语言? ;) 在Javascript中,您将使用array.push()附加到数组;所以
$(".agency_field").each(function(index) { agencies.push( $(this).val() ); });