Jquery 如何向json数组添加额外的键和值

Jquery 如何向json数组添加额外的键和值,jquery,ajax,Jquery,Ajax,我正在使用 var fields = $(this).serializeArray(); 在用php调用ajax处理该数组之前,我想将动态令牌值推送到该数组 我试着用 fields.push({token:value}); 我对php的ajax调用是 $.ajax({ type : 'POST', url : "test.php", data : fields, dataType : 'json', success: function(data) {

我正在使用

var fields = $(this).serializeArray();
在用php调用ajax处理该数组之前,我想将动态令牌值推送到该数组

我试着用

fields.push({token:value});
我对php的ajax调用是

$.ajax({

    type : 'POST',
    url : "test.php",
    data : fields,
    dataType : 'json',
    success: function(data) {......},
    error{....}
});
在我的test.php页面中,我想使用这个标记值

 $token = $_POST[token];
但是$token值为空。

请尝试以下操作:

fields[token] = value;
如果使用
push
,则只需将一个值推送到数组的末尾,最后一个索引就会增加。

尝试以下操作:

fields[token] = value;

如果使用
push
,则只需将一个值推送到数组的末尾,最后一个索引将增加。

。serializeArray
返回具有以下结构的数组

[{name: 'name', value: 'value'}, ...]
因此,您必须添加一个具有
名称
属性的对象:

fields.push({name: 'token', value: 'value'});
或者如果
标记
是变量:

fields.push({name: token, value: value});


我已经在另一个问题中回答了这个问题:.

.serializeArray
返回具有以下结构的数组

[{name: 'name', value: 'value'}, ...]
因此,您必须添加一个具有
名称
属性的对象:

fields.push({name: 'token', value: 'value'});
或者如果
标记
是变量:

fields.push({name: token, value: value});


我已经在另一个问题中回答了这个问题:.

……会发生什么?我得到的$token为null。可能的重复项您可以查看
serializeArray
函数以及数组的结构:……会发生什么?我得到的$token为null。可能的重复项您可以查看
serializeArray
函数以及数组的结构:。如果它是一个对象,则它将是
fields.token=value。没错,不!是否使用点符号或括号符号并不重要。我假设
标记
包含一个字符串。。。对数组使用字符串键吗?我希望不是。如果我使用这个ajax调用失败,为什么要假设
令牌
是字符串<代码>字段
是一个数组,无论。。。代币可以是任何东西,我不做任何假设。Topic poster正在使用一个数组,并希望在其中添加一个项目,该项目显然具有唯一标识符。如果它是一个对象,则它将是
fields.token=value。没错,不!是否使用点符号或括号符号并不重要。我假设
标记
包含一个字符串。。。对数组使用字符串键吗?我希望不是。如果我使用这个ajax调用失败,为什么要假设
令牌
是字符串<代码>字段
是一个数组,无论。。。代币可以是任何东西,我不做任何假设。Topic poster正在使用一个数组,并希望在其中添加一个项目,显然带有唯一标识符。