我试图 $.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"(我需要 key ,例如 [1] => 'usertest2' 以便稍后访问它们?)
最佳答案
如果问题不清楚,请通过手动创建数组来解决,而不是尝试序列化表单数据并附加数组:
var data =
{
form_data:
{
ban_type: type,
ban_duration: duration
},
ban_data: getSelectedUsers()
};
关于javascript - jquery 将数组插入数组并在发布数据中维护键(多维?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27939506/