jquery - 获取div中的所有输入以进行ajax请求

标签 jquery forms post

我正在尝试获取所有输入文本框、单选按钮组、复选框等。我在获取所选单选按钮和复选框值时遇到问题,我无法弄清楚。

我可以获取文本框,但似乎无法在正确的位置获取“选定”。目前它只是获取单选/复选框的第一个值而不是选定的值。

$('#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/

相关文章:

ajax - ASPNET CORE Ajax Post 结果为 400 Bad Request

php - Telegram Bot sendDocument(托管服务器上的 php)

javascript - 如何在提交后自动清空表单中的字段

php - 获取多个输入的值

php - 数据表无法正确读取 JSON 数据

javascript - HTML5 重复列表 <ul> <li>

Jquery - 是否可以按类名过滤元素并获取其父级的索引?

javascript - 如何避免标签重复?

c# - SignalR - 在 Windows 窗体服务器上验证 Windows 窗体用户

ruby-on-rails - Ruby on Rails - 具有 belongs_to 关联的表单