我似乎无法添加到 serializeArray 生成的数组中

I can't seem to add to the array generated by serializeArray

这是代码。

        var postData={};
    event.stopPropagation();
    postData.action='preview';
    postData.data=$("form#gaarrl").serializeArray();
    var n=[];
    n['name']='media';
    n['value']=imgName;
    postData.data.push(n);       
    console.dir(postData);
    $.post("database.php",{postData },

console.dir 命令按预期将 media:imgName 显示为 postData.data 的一部分,但 database.php $_REQUEST 仅显示 serializeArray 步骤中的元素。

发生了什么事?

谢谢, 吉姆.

尝试将 var n = []; 更改为 var n = {};

这帮我修好了。

这是因为普通的 Javascript 数组不允许键,只允许数字索引。 {}new Object() 的 shorthand,并允许您为其指定多个命名属性。