如何将其他键和值添加到json数组中

时间:2013-06-03 20:30:11

标签: jquery ajax

我使用

将表单数据输入到数组中
var fields = $(this).serializeArray();

我想在进行ajax调用以在php中处理此数组之前将动态标记值推送到此数组。

我尝试

fields.push({token:value});

我对ajax的调用是

$.ajax({

    type : 'POST',
    url : "test.php",
    data : fields,
    dataType : 'json',
    success: function(data) {......},
    error{....}
});

在我的test.php页面中,我想使用像

这样的标记值
 $token = $_POST[token];

但$ token值为null。

2 个答案:

答案 0 :(得分:2)

.serializeArray返回一个结构为

的数组
[{name: 'name', value: 'value'}, ...]

因此,您必须添加具有namevalue属性的对象:

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

或者tokenvalue是变量:

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

Have a look at the documentation for more information.

我已在另一个问题中回答:Can I add data to an already serialized array?

答案 1 :(得分:1)

试试这个:

fields[token] = value;

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