【发布时间】:2015-03-12 10:24:48
【问题描述】:
我正在尝试 $.post 使用一些表单数据以及数组中的一些其他数据。我可以将数组推送到表单数据的其余部分,但是我丢失了它们数组中的键,并且数据只是表示为一个字符串,我想我要的是一个多维数组?
这是当前的响应字符串:
array(3) { ["ban_type"]=> string(11) "Account ban" ["ban-duration"]=> string(1) "2" ["test"]=> string(19) "adsasdasd,usertest2" }
['test'] 是我试图通过的数组。这是我传递的数据,其中 'getSelectedUsers()' 是数组:
var formdata = $('#ban-form').serializeArray();
formdata.push({name:'test', value:getSelectedUsers()});
无论如何我可以得到 ['test'] 的值来保存带有键的实际数组吗?
编辑:这是函数中使用的帖子:
$.post(action, request_data, function(data)
{
$(response_element).html(data);
});
这是传递数据的调用:
ajaxPost(action, formdata, "body");
如果我只是传递数组,我会得到带有键的响应:
ajaxPost(action, {test:getSelectedUsers()}, "body");
编辑:为了澄清我的要求 - 有什么方法可以将普通数组附加/推送到序列化的 formdata 数组中,这样它是多维的并且可以保存数组及其键,而不仅仅是字符串:[ "test"]=> string(19) "adsasdasd,usertest2" (我需要密钥,例如 [1] => 'usertest2' 以便我以后可以访问它们?)
【问题讨论】:
-
getSelectedUsers()真的返回一个数组吗?在显示的行之后你如何处理formData? -
在编辑中添加了说明,是的 getSelectedUsers() 返回一个数组。我在 $.post 中使用 formData
标签: javascript php jquery arrays multidimensional-array