如何通过AJAX Post传递嵌套PHP数组?
我有一个PHP脚本,它期望:如何通过AJAX Post传递嵌套PHP数组?,php,jquery,ajax,arrays,post,Php,Jquery,Ajax,Arrays,Post,我有一个PHP脚本,它期望: $_REQUEST['asdf']['bsdf']['csdf'] 当它被调用时被设置,我不能改变它。 我想通过ajax调用此PHP脚本: myurl = 'example-url.com'; myid = $(this.$element).attr('id'); //gets the id of a textfield: csdf value = 'somevalue'; $.ajax({type: 'POST', url: myurl,
$_REQUEST['asdf']['bsdf']['csdf']
当它被调用时被设置,我不能改变它。
我想通过ajax调用此PHP脚本:
myurl = 'example-url.com';
myid = $(this.$element).attr('id'); //gets the id of a textfield: csdf
value = 'somevalue';
$.ajax({type: 'POST',
url: myurl,
data: {'asdf[bsdf][myid]': value},
success: function (data) {
/* blabla */
}
});
但它不起作用,因为var“myid”没有填充假定的值“csdf”。
有人能帮我怎么做吗
PS:我无法访问PHP文件,因此无法更改结构…请尝试以下操作:
var myurl = 'example-url.com';
var myid = $(this.$element).attr('id'); //gets the id of a textfield: csdf
var value = 'somevalue';
var param = {};
param[myid] = value;
$.ajax({type: 'POST',
url: myurl,
data: {'asdf[bsdf]' : param},
success: function (data) {
}
});
您可以在通过ajax调用传递的数据之外构建param对象,以保持正确的键
... {
...
data: {[['first', 'array', 'nested'], 'other', 'in', 'parent', 'array']},
...
}
在PHP中,获取POST变量是与其他语句一起使用的
var\u dump($\u POST)说了什么?非常感谢,这就成功了!昨天我花了好几个小时试了试:-)