如何使用jqueryajax将多个阵列发布到Web2py控制器?
我试图使用jqueryajax将两个数组发布到我的控制器。以下是我的代码的一部分:如何使用jqueryajax将多个阵列发布到Web2py控制器?,jquery,ajax,web2py,Jquery,Ajax,Web2py,我试图使用jqueryajax将两个数组发布到我的控制器。以下是我的代码的一部分: arr1 = ['a','b','c'] arr2 = ['d','e'] $.ajax({ type: "POST", dataType: 'json', data: {arr1:arr1, arr2:arr2}, url: url }); 我在我的请求中得到的是: {'arr1[]': ['a','b','c'], 'arr2[]': ['d','e']} 为什么字典键的
arr1 = ['a','b','c']
arr2 = ['d','e']
$.ajax({
type: "POST",
dataType: 'json',
data: {arr1:arr1, arr2:arr2},
url: url
});
我在我的请求中得到的是:
{'arr1[]': ['a','b','c'], 'arr2[]': ['d','e']}
为什么字典键的末尾有[]?!我不是以正确的方式传递数组吗 这就是我发布两个变量的方法
var msg = "msg=" + JSON.stringify({
"new": n,
"del": d,
});
$.post('{{=post_url}}', msg, function(jdata) {
var data = $.parseJSON(jdata);
它按预期工作,JSON字符串作为变量“msg”的内容发送。哦,对了,我改变了我的建议。我认为$.ajax将在json中查找{variable:content}类型的对象,并将该变量用作HTTP POST中的变量,而内容用作该变量的内容。我总是用一个变量传递东西;现在在我的帖子中得到这个奇怪的东西{'data:[arr1][]':['a','b','c']}我已经尝试了stringfy,问题是,结果将作为字符串传递给服务器,然后我必须将这个字符串数组转换回实际数组,这不是一个简单的任务。下面是post_vars now:
Storage{'msg':'{“arr1”:[a,b],“arr2”:[c,d,e]}
正如您现在看到的,整个对象是字符串形式的。