jQuery Ajax将Object发送给PHP

时间:2013-12-13 13:22:50

标签: jquery ajax json object

在JSON.stringify之前

[Object { key="name", val="John Doe"}, Object { key="email", val="doe@doe.com"}, Object { key="company", val="JOHN INC"}, Object { key="tel", val="01234"}, Object { key="subject", val="Sales Enquiry"}, Object { key="comments", val="HELLOOO"}]

JSON.stringify

[{"key":"name","val":"John Doe"},{"key":"email","val":"doe@doe.com"},{"key":"company","val":"JOHN DOE INC"},{"key":"tel","val":"01345"},{"key":"subject","val":"Sales Enquiry"},{"key":"comments","val":"HELLOOO"}]

以上是使用下面代码中的console.log(strung)输出的内容。我想要获得的是通过ajax发送到PHP的数据,以便我可以在PHP中使用例如$_POST['name']来发送电子邮件。

var strung = JSON.stringify(arr);
    console.log(arr);
console.log(strung);
$.ajax({
    type: "POST",
    url: "/contact.php",
    data: strung,
    success: function(data) {
        console.log(data);
    }
});

感谢帮助

1 个答案:

答案 0 :(得分:4)

尝试:

var param = {};

$.each(arr, function() {
    param[this.key] = this.val;
});

发送

data: param,
$ .ajax参数中的

您可以使用PHP访问

echo $_POST['name'], $_POST['email']

...