我有一个 jQuery ajax 函数,想提交整个表单作为发布数据。我们不断更新表单,因此不断更新应在请求中发送的表单输入变得很乏味。
有一个函数可以做到这一点:
http://api.jquery.com/serialize/
var data = $('form').serialize();
$.post('url', data);
如果您想使用 post 方法发送表单,serialize() 不是一个好主意。例如,如果你想通过 ajax 传递文件,它就不起作用。
假设我们有一个带有此 id 的表单:“myform”。
更好的解决方案是制作一个FormData并发送它:
let myform = document.getElementById("myform");
let fd = new FormData(myform );
$.ajax({
url: "example.php",
data: fd,
cache: false,
processData: false,
contentType: false,
type: 'POST',
success: function (response) {
// do something with the result
}
});
一般在表单元素上使用
serialize()
。
请注意,多个