5

快速提问

如果我已经使用 jquery 的.serializeArray();函数序列化了一个表单,我是否需要对它做任何事情才能使用 jquery 的 ajax 发送它data:

例如,我可以送走吗

[{name: inp1, value: 'val1'}, {name: inp2, value: 'val2'}]按原样,还是我需要以某种方式对其进行预处理?

并且,在 php 中我将如何阅读这个?

4

1 回答 1

32

在这里使用会更好serialize。这会将表单的值转换为可用作 AJAX 调用data属性的简单字符串:

var myData = $('#yourForm').serialize();
// "inp1=val1&inp2=val2"
$.ajax({
    url: "http://example.com",
    data: myData
});

假设您使用该方法将其发送到 PHP ,您可以使用和GET访问这些值$_GET['inp1']$_GET['inp2']


编辑:您可以使用将 by 制作的数组转换serializeArray为参数字符串$.param

var myData = $('#yourForm').serializeArray();
// remove items from myData
$.ajax({
    url: "http://example.com",
    data: $.param(myData) // "inp1=val1&inp2=val2"
});
于 2011-02-01T12:04:43.690 回答