jQuery:serializeArray和附加值

时间:2014-03-25 18:06:07

标签: javascript jquery ajax serializearray

我有以下页面,其中使用ajax发布表单:

<form name="postdata">
    <input type="hidden" name="id" value="XXXX">
    <input type="hidden" name="action" value="add">
    <button type="submit" class="btn btn-success submit">Submit</button>
</form>

<script>
$(function()
{
    $('form[name="postdata"]').on('submit', function()
    {
        var data = $(this).serializeArray()
        $.post('api/Update.php', data, function(r,s)
        {
            console.log(r)
        });
    })
})
</script>

我有几百个表单,就像我上面的那个表格一样,最好从表单操作中删除冗余“action”参数,然后将其添加到JS函数中。

它应该是这样的:

var data = $(this).serializeArray() + "&action=add"

原来是:

[object Object],[object Object]&action=add

不起作用但应该接近,我只是一个JS总裁。请帮帮我。

非常感谢!

1 个答案:

答案 0 :(得分:1)

这是因为您将对象(一个Array对象)与一个字符串连接在一起,使用serialize方法返回一个字符串或将一个对象推入数组。

data.push({
    name: 'action',
    value: 'add'
});