截取表单,添加数据,ajax,然后提交。

时间:2013-11-21 00:51:44

标签: jquery ajax forms

我想拦截表单提交,将其ajax到一个位置,然后发布表单。以下是我对失败的尝试。我将一如既往地了解我出错的地方。

说明为什么我正在做我正在做的事情:我想存储表格的完整副本,HTML和所有,但仍然处理选定的字段作为典型的表单提交。我的ajax按预期保存HTML,但停止表单提交。删除preventDefault()会导致表单在ajax成功之前提交。

$('#myForm').submit(function(event) {
    event.preventDefault();
    $.ajax({
        type: 'POST',
        url: '../../lib/processCompleted.php',
        cache: false,
        dataType: 'text',
        data: { PracticeID: PracticeID },

        success: function (data) {
            alert('success');
            // I would then like to submit the form as usual.
            //return true; 
            //$('#myForm').submit();
        },
        error: function () {
            alert('boo');
        }
    });
});

干杯

1 个答案:

答案 0 :(得分:2)

当您再次调用$('#myForm').submit();时,将调用提交处理程序,这将阻止表单提交。在这种情况下,创建一个无限循环的ajax请求。

尝试

$('#myForm')[0].submit();

演示:Fiddle