我需要将两个对象和一个字符串作为post参数传递给php。
这就是我现在的代码:
var obj1 = {'a':'b', 'c':'d'};
var obj2 = {'e':'f', 'g':'h'};
var url = 'hello';
dataParams = {
object1: obj1,
object2: obj2,
url: url
}
$.ajax({
url: '/sample.php',
dataType: 'json',
method: 'POST',
data: dataParams
});
在sample.php中
echo $_POST['url'] gives hello
echo $_POST['object1'] or json_decode($_POST['object1']) gives null.
echo $_POST['object2'] or json_decode($_POST['object2']) gives null.
代码有什么问题?
答案 0 :(得分:2)
您正在使用
method = 'POST'
应该是:
type: 'POST'
另外,echo $ _POST ['object1']将返回'Array'!如果你想看到这些值,请使用print_r($ _ POST ['object1']),好吗? ;)
答案 1 :(得分:2)
感谢您的快速回复。
在我的代码中,我从DOM输入字段填充obj1和obj2。我已将它们初始化为数组而不是对象。
obj1 = [] instead of obj1 ={}
做出改变后,工作正常。
谢谢