我正在尝试使用 ajax 将 javascript 数组发送到新页面。关于 SO 有很多问题,在搜索完答案后,我决定像这样使用 Ajax:
var test = {};
test['a1'] = 1;
test['a2'] = 2;
$(document).ready(function(){
$('#form').submit(function(e){
$.ajax({
url: 'newpage.php',
data: {test:test},
type: 'post',
success: function(data) {
alert(data);
}
});
window.open('newpage.php', 'formres','width=800,height=800,resizeable,scrollbars');
e.preventDefault();
});
});
它的工作原理是新窗口按原样打开 - 但 $_POST 数组为空。我究竟做错了什么?
编辑:我试过 {test:test}, {'test':test} 并且只是测试。我将尝试序列化数据,看看会发生什么。@Louis H:谢谢,没想到。我将尝试使用 Firebug。非常感谢,你们所有人!
Edit2:尽管测试数组没有通过,但我仍然感到困扰。正如 Kevin B 指出的那样,发布请求应该包含参数 a1 和 a2,但事实并非如此。如果我发现我做错了什么,我会再次发布。