动态地向表单post添加数据



使用html表单,使用"post"方法,是否有一种方法可以指示浏览器动态添加数据(一旦客户端发布表单)到帖子,而无需以输入元素的名称值对的形式?你可以使用javascript/jquery/ajax只是说,当这个表单被张贴,附加一些字符?

<form id="form1" onsubmit="sbmForm1();return false;">
<input type="text" name="var1" value="value1" />
<input type="text" name="var2" value="value3" />
<input type="submit" name="sbm-btn" value="send" />
</form>

在javascript函数sbmForm1中,你可以添加参数并通过ajax发送它们:

    $.ajax({
        url: 'http://www.yoururl.com/script.php',
        type: 'POST',
        cache: false,
        data: $('#form1').serialize() + '&yournewvar=yournewvalue',
        success: function(msg) {
            location.reload();
        }
    });

你需要jquery来做这个请求!

您可以使用XMLHttpRequest Javascript对象来做到这一点。

您还可以使用serializeArray(),它允许您向JSON结构添加数据:

var form = $('#form1');
form = form.serializeArray();
form = form.concat([
    {name: "customer_id", value: window.username},
    {name: "post_action", value: "Update Information"}
]);
$.post('/change-user-details', form, function(d) {
    if (d.error) {
        alert("There was a problem updating your user details")
    } 
});

最新更新