我正在尝试获取所有输入文本框、单选按钮组、复选框等。我在获取所选单选按钮和复选框值时遇到问题,我无法弄清楚。
我可以获取文本框,但似乎无法在正确的位置获取“选定”。目前它只是获取单选/复选框的第一个值而不是选定的值。
$('#form_1 input').each(function(key)
formData += '&'+$('#'+this.id).attr('name')+'='+$('#'+this.id).val();
});
谢谢
已编辑
$('#form_1 input').each(function(key, value) {
if ((this.type === "radio" || this.type === "checkbox") && this.checked === true) {
val = this.value;
} else {
val = this.value;
}
alert($('#'+this.id).attr('name') + ' = ' + val);
formData += '&'+$('#'+this.id).attr('name')+'='+val;
});
好吧,现在我得到了 radio 等的所有值,所以我又近了一步。现在只需要获取所选 radio 的值即可。
谢谢
最佳答案
只需使用 serialize()
[docs]方法。
它将负责为您获取所选元素的值。
var formData = $('#form_1').serialize();
来自文档:
The .serialize() method can act on a jQuery object that has selected individual form elements, such as , , and . However, it is typically easier to select the tag itself for serialization:
$('form').submit(function() { alert($(this).serialize()); return false; });
This produces a standard-looking query string:
a=1&b=2&c=3&d=4&e=5
关于jquery - 获取div中的所有输入以进行ajax请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6005945/