jQuery动态表单提交

时间:2010-09-08 19:59:30

标签: javascript jquery

我可以轻松找到如何使用jQuery提交现有表单。但是,如果有URL,我可以如何动态创建和提交此表单?

1 个答案:

答案 0 :(得分:9)

对于一个可能以另一种方式更好地解决的问题,这听起来像是一个糟糕的解决方案......

话虽这么说,你可以创建一个表单并轻松触发提交方法:

$([
    '<form action="url.php" method="post">',
        '<input type="hidden" name="param1" value="foo"/>',
        '<input type="hidden" name="param1" value="foo"/>',
    '</form>'
].join('')).appendTo('body')[0].submit();

如果你需要能够指定参数和url,那么你可以编写一个类似于这个的函数:

function submitValues(url, params) {
    var form = [ '<form method="POST" action="', url, '">' ];

    for(var key in params) 
        form.push('<input type="hidden" name="', key, '" value="', params[key], '"/>');

    form.push('</form>');

    jQuery(form.join('')).appendTo('body')[0].submit();
}

并以这种方式称呼它:

submitValues('url.php', { foo: 'bar', boo: 'far' });