猿问

表单提交后如何进行Jquery回调?

表单提交后如何进行Jquery回调?

我有一个带有remote = true的简单表单。

此表单实际上位于HTML对话框上,一旦单击“提交”按钮,该对话框就会关闭。

现在,我需要在表单成功提交后对主HTML页面进行一些更改。

我尝试使用jQuery。但这并不能确保在表单提交的某种形式的响应之后执行任务。

$("#myform").submit(function(event) {// do the task here ..});

如何附加回调,以便我的代码只有在成功提交表单后才能执行?有没有办法在表单中添加一些.success或.complete回调?


慕盖茨4494581
浏览 2280回答 3
3回答

Cats萌萌

我这样做了 - $("#myform").bind('ajax:complete', function() {          // tasks to do     });事情很完美。

拉莫斯之舞

我无法获得第一个可靠的工作解决方案,但发现这是有效的。不确定是否需要,但我没有标记上的action或method属性,这确保POST由$ .ajax函数处理并为您提供回调选项。<form&nbsp;id="form">...<button&nbsp;type="submit"></button></form><script>$(document).ready(function()&nbsp;{ &nbsp;&nbsp;$("#form_selector").submit(function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;$.ajax({ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:&nbsp;"POST", &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url:&nbsp;"form_handler.php", &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data:&nbsp;$(this).serialize(), &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;success:&nbsp;function()&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;callback&nbsp;code&nbsp;here &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}) &nbsp;&nbsp;})})</script>
随时随地看视频慕课网APP
我要回答