根据html规范,一般的form写法如下:
<form action="operation.htm" method="post">
……
<input type="submit" value="保存报告"/>
</form>
点击submit按钮或直接回车可以将数据提交到operation.htm页面,但是submit后页面也会跳转到operation.htm页面。
如何做到:将数据提交到operation.htm(form的action指向)页面,但是页面又不进行跳转,即保持当前页面不变呢??
这种需求一般是在需要异步提交的时候出现。
利用jquery的ajaxSubmit函数以及form的onsubmit函数完成,如下:
<form id="submitForm" action="operation.htm" method="post" οnsubmit="return operate();">
<input type="submit" value="保存"/>
</form>
form增加一个id用于在jquery中调用,增加一个onsubmit函数用于submit前自己提交表单
operate对应函数为
function operate() {
// jquery 表单提交
$("#submitForm").ajaxSubmit(function(message) {
// 对于表单提交成功后处理,message为提交页面operation.htm的返回内容
});
return false; // 必须返回false,否则表单会自己再做一次提交操作,并且页面跳转
}