JQuery - 追加到序列化

use*_*039 20 jquery serialization

我试图弄清楚如何将另外两个值附加到JQuery中的serialize方法.我有以下代码提交带有ajax的表单,还有两个我想要附加的变量:

谢谢!

    ...
    var formData = $('#contact_form').serialize();
    submitForm(formData);

    // -----------------------------------------------
    // AJAX FORM SUBMIT
    // -----------------------------------------------
    function submitForm(formData){
        $.ajax({    
            type: 'POST',
            url: 'contact.php',
            data: formData,
            dataType: 'json',
            cache: false,
            timeout: 7000,
            success: function(data) {
                // display success message
                response(data.msg,'show');
            },
            error: function(XMLHttpRequest, textStatus, errorThrown) {
                ...
            },              
            complete: function(XMLHttpRequest, status) { 
                ...
            }
        });
    }
Run Code Online (Sandbox Code Playgroud)

Man*_*eUK 37

如果更改serialize()serializeArray(),则可以将值推送到数组中:

var formData = $('#contact_form').serializeArray();
formData.push({ name: "<something>", value: "<somevalue>" });
submitForm(formData);
Run Code Online (Sandbox Code Playgroud)

serialize()使用该$.ajax()方法仍然可以使用与方法相同的方式发送数据

  • http://stackoverflow.com/a/10398820/1131897.这是正确的答案 (3认同)

Sal*_*Sal 11

您可以通过附加到变量来添加新值:

formData += '&var1=blah&var2=blah';
Run Code Online (Sandbox Code Playgroud)