如何获取所选表格的所有元素
问题描述:
你好我们假设我在页面上有两种形式。如何获取所选表格的所有元素
现在我想获取所有输入元素(即使它们是隐藏的)。
我现在的代码如下所示:
$("form.prev, form.next").submit(function(e){
e.preventDefault();
var inputs = $(this).filter(':input');
console.log(inputs);
var values = {};
inputs.each(function() {
values[this.name] = $(this).val();
});
console.log(values);
});
我期待看到他们的键和值的输入元素的列表。但是console.log(values);
的结果是空的对象
这里发生了什么问题?
答
不需要自己做 - serialize()
函数是为此目的而发明的。
$("form.prev, form.next").submit(function(e){
e.preventDefault();
var data = $(this).serialize();
// data is a key/value string, you can now use it in AJAX requests for example
});
答
尝试这种情况:使用.find()
代替.filter()
$("form.prev, form.next").submit(function(e){
e.preventDefault();
var inputs = $(this).find(':input');
console.log(inputs);
var values = {};
inputs.each(function() {
values[this.name] = $(this).val();
});
console.log(values);
});
'inputs.each(函数(指数,OBJ){...'然后'值[obj.attr ('name')] = $(obj).val();' – 2014-10-28 10:41:57