将页面上的一组输入存储到javascript数组中?
我在一个页面上有一堆输入,即:将页面上的一组输入存储到javascript数组中?,javascript,jquery,Javascript,Jquery,我在一个页面上有一堆输入,即: <input name="user[name]" /> <input name="user[phone]" /> <input name="user[email]" /> 但那是因为我对javascript数组知之甚少 这类事情是如何实现的?使用该功能 使用该功能 我建议您将所有元素的类my\u inputs或其他东西,然后使用$(“.my\u inputs”)获取它们。这样,您现在就拥有了这些输入的对象,并且可以像这样循环它
<input name="user[name]" />
<input name="user[phone]" />
<input name="user[email]" />
但那是因为我对javascript数组知之甚少
这类事情是如何实现的?使用该功能
使用该功能
我建议您将所有元素的类
my\u inputs
或其他东西,然后使用$(“.my\u inputs”)
获取它们。这样,您现在就拥有了这些输入的对象,并且可以像这样循环它们:
var inputs = $(".my_inputs");
inputs.each(function(i, el){
$(el).val(); //Get input's value
});
我建议您将所有元素都赋给类
my\u inputs
或其他东西,然后使用$(“.my\u inputs”)
获取它们。这样,您现在就拥有了这些输入的对象,并且可以像这样循环它们:
var inputs = $(".my_inputs");
inputs.each(function(i, el){
$(el).val(); //Get input's value
});
类似于
$('submit').click(function(e){
e.preventDefault();
var user = [];
$('input[name*=user]').each(function(index) {
user[index] = $(this).val();
});
}
类似于
$('submit').click(function(e){
e.preventDefault();
var user = [];
$('input[name*=user]').each(function(index) {
user[index] = $(this).val();
});
}
要在JavaScript中向数组添加项,不能像在PHP中那样使用空方括号。另一种方法是在循环外创建一个空数组,例如
// Outside loop
var user[];
然后在循环中使用push()方法向其添加项:
// Within loop
user.push(input_value);
要在JavaScript中向数组添加项,不能像在PHP中那样使用空方括号。另一种方法是在循环外创建一个空数组,例如
// Outside loop
var user[];
然后在循环中使用push()方法向其添加项:
// Within loop
user.push(input_value);
1.
preventDefault
是一个方法-您需要使用()
调用它;2.使用[]
创建一个空数组-最好从原始代码中复制默认值:)立即修复。。谢谢你关于空括号的提示preventDefault
是一个方法-您需要使用()
调用它;2.使用[]
创建一个空数组-最好从原始代码中复制默认值:)立即修复。。谢谢关于空括号的提示。OP需要一个输入值数组,而不是输入名称this.value
来检索值-这里不需要jQuery。这个解决方案看起来很好,也很优雅,但是我如何在数组中使用这些变量呢?这些值现在是否映射到数组,或者我是否仍然需要执行var array_name=??get(0)
之类的操作来获取数组中的第一个varget(1)
获取第二个,依此类推。检查示例OP需要一个输入值数组,而不是输入名称this.value
来检索值-这里不需要jQuery。这个解决方案看起来很好,也很优雅,但是如何在数组中使用这些变量呢?这些值现在是否映射到数组,或者我是否仍然需要执行var array_name=??get(0)
之类的操作来获取数组中的第一个varget(1)
获取第二个,依此类推。检查示例el
是DOM元素,不是jQuery对象,因此不能对其调用val()
。el
是DOM元素,不是jQuery对象,因此不能对其调用val()
。