2013-07-02 82 views
1

我已经做了好几个小时在这个几乎没有喜悦。我是一名jQuery初学者。 在提交表单我想停下来的表格处理,加载外部文件,然后再处理形式。除了提交表单的最后一行之外,所有内容都是有效的。有人能指引我走向正确的方向吗?停止提交表单,做jQuery的功能,然后提交表单

<script type="text/javascript"> 
    $("#form1").on('submit', function(e) { 
     e.preventDefault(); 
     $("#a").load("saveData.php"); 
     $('#form1').submit(); 
    }); 
</script> 
+0

是什么外部文件呢?提交表格取决于它? –

回答

0
$("#form1").on('submit', function (e) { 
    e.preventDefault(); 
    var $this = this; 
    $("#a").load("saveData.php", function(){ 
     $this.submit(); //assuming you want to submit the form after you have loaded the file 
    }); 
}); 
0

你有一个无限循环,因为提交表单再次调用您提交处理。

刚刚离开了e.preventDefault();。当处理程序返回时,会发生正常的表单提交。

+0

如果我拿出e.preventDefault();表单提交正常但不加载外部文件。 – user2540592

+0

当你提交一个表单,页面被替换任何服务器返回。如果你不想这样做,你必须使用AJAX而不是普通的表单提交。 – Barmar

+0

您可能感兴趣的这个插件:http://malsup.com/jquery/form/ – Barmar

1

你需要

$("#form1").on('submit', function (e) { 
    e.preventDefault(); 
    var form = this; 
    $("#a").load("saveData.php", function(){ 
     form.submit(); // we need to use a non jQuery form reference here to prevent recursive submit calls 
    }); 
});