ajaxForm与ajaxSubmit的区别
2018-02-05 14:02
281 查看
在使用这两种方法之前,首先需要安装form.js的插件;
一、首先说用法,ajaxForm和ajaxSubmit都可以接收0或1个参数,该参数可以是一个变量、一个对象或回调函数,这个对象主要有以下参数:
var object= {
url:url, //form提交数据的地址
type:type, //form提交的方式(method:post/get)
target:target, //服务器返回的响应数据显示的元素(Id)号
beforeSerialize:function(){} //序列化提交数据之前的回调函数
beforeSubmit:function(){}, //提交前执行的回调函数
success:function(){}, //提交成功后执行的回调函数
error:function(){}, //提交失败执行的函数
dataType:null, //服务器返回数据类型
clearForm:true, //提交成功后是否清空表单中的字段值
restForm:true, //提交成功后是否重置表单中的字段值,即恢复到页面加载时的状态
timeout:6000 //设置请求时间,超过该时间后,自动退出请求,单位(毫秒)。
}
html代码:
JS代码:-ajaxForm
二、再说这两种方法的区别
这两种方法主要的区别是ajaxForm不能主动提交form,函数只是为提交表单做准备需要以submit来触发提交。而ajaxSubmit会主动提交表单,同时可以在点击其他按钮时也可以触发提交,不一定是submit按钮。
三、用代码说明两者的区别:
1.ajaxForm()方法–不能主动提交form,函数只是为提交表单做准备需要以submit来触发提交,仍然会进行页面的跳转
通过上面的代码看出,ajaxForm()方法不能主动提交form表单,要借助于提交按钮的submit事件触发提交,虽然有return false,仍然会进行页面的跳转。。
2.ajaxSubmit()方法–可以主动提交表单,点击其他按钮也就可以触发提交,不一定是submit按钮;利用return false可以阻止页面的跳转。。
上面代码中,ajaxSubmit()可以主动提交表单,可以不写在submit按钮的事件里面,点击其他按钮也可以触发;利用return false可以阻止页面的跳转。。
一、首先说用法,ajaxForm和ajaxSubmit都可以接收0或1个参数,该参数可以是一个变量、一个对象或回调函数,这个对象主要有以下参数:
var object= {
url:url, //form提交数据的地址
type:type, //form提交的方式(method:post/get)
target:target, //服务器返回的响应数据显示的元素(Id)号
beforeSerialize:function(){} //序列化提交数据之前的回调函数
beforeSubmit:function(){}, //提交前执行的回调函数
success:function(){}, //提交成功后执行的回调函数
error:function(){}, //提交失败执行的函数
dataType:null, //服务器返回数据类型
clearForm:true, //提交成功后是否清空表单中的字段值
restForm:true, //提交成功后是否重置表单中的字段值,即恢复到页面加载时的状态
timeout:6000 //设置请求时间,超过该时间后,自动退出请求,单位(毫秒)。
}
html代码:
<form action="" id="persondetail" method="post"> <div>姓名:<input name="text1" type="text" class="inputbox"></div> <div>年龄:<input name="text2" type="text" class="inputbox"></div> <div>爱好:<input name="text3" type="text" class="inputbox"></div> <div><input id="submitbtn" type="submit" value="提交"></div> </form>
JS代码:-ajaxForm
$(function(){ $("form").ajaxForm(object); })
-ajaxSubmit
$(function(){ $('#submitbtn').click(function(){ $("form").ajaxSubmit(object); }) })
-参数也可以为一个回调函数
$(function(){ $('#submitbtn').click(function(){ $("form").ajaxSubmit(function(data){ alert(data); }) }) })
二、再说这两种方法的区别
这两种方法主要的区别是ajaxForm不能主动提交form,函数只是为提交表单做准备需要以submit来触发提交。而ajaxSubmit会主动提交表单,同时可以在点击其他按钮时也可以触发提交,不一定是submit按钮。
$("form").submit(function(){ $(this).ajaxSubmit(); return false; //此句解释了为什么ajaxSubmit会自动提交表单,想要阻止自动提交,必须return false; })
三、用代码说明两者的区别:
1.ajaxForm()方法–不能主动提交form,函数只是为提交表单做准备需要以submit来触发提交,仍然会进行页面的跳转
<form id="myForm" action="hello.php" method="post" onsubmit="return sub()"> <input type="text" name="name" /> <br/> <input type="text" name="address" /><br/> <input type="submit" id="test" value="提交"/> <br/> </form> function sub(){ $("#myForm").ajaxForm(function(message){ console.log(message); }); return false;//控制页面的跳转 }
通过上面的代码看出,ajaxForm()方法不能主动提交form表单,要借助于提交按钮的submit事件触发提交,虽然有return false,仍然会进行页面的跳转。。
2.ajaxSubmit()方法–可以主动提交表单,点击其他按钮也就可以触发提交,不一定是submit按钮;利用return false可以阻止页面的跳转。。
<form id="myForm" action="hello.php" method="post"> <input type="text" name="name" /> <br/> <input type="text" name="address" /><br/> <input type="button" id="test" value="提交" onclick="sub()"/> <br/> </form> function sub(){ $("#myForm").ajaxSubmit(function(message){ conso 4000 le.log(message); }); return false;//控制页面的跳转 }
上面代码中,ajaxSubmit()可以主动提交表单,可以不写在submit按钮的事件里面,点击其他按钮也可以触发;利用return false可以阻止页面的跳转。。
相关文章推荐
- ajaxForm与ajaxSubmit的区别
- jQuery.post和jquery.form.ajaxsubmit的区别
- ajaxForm与ajaxSubmit的区别
- Ext.Ajax.request和form.getForm().submit的区别
- ajaxForm与ajaxSubmit的区别
- ajaxForm与ajaxSubmit的区别
- ajaxForm与ajaxSubmit的区别
- ajaxForm与ajaxSubmit的区别
- form.getForm().submit的用法及Ext.Ajax.request的小小区别
- [转] form.getForm().submit的用法及Ext.Ajax.request的小小区别
- ajaxForm与ajaxSubmit的区别
- form.getForm().submit的用法及Ext.Ajax.request的小小区别
- ajaxForm与ajaxSubmit的区别
- ext.Ajax.request和form.submit的区别
- ExtJS中Ext.Ajax.request与form1.getForm().submit的基本区别
- ajaxForm与ajaxSubmit的区别
- ajaxForm与ajaxSubmit的区别
- ajaxForm与ajaxSubmit的区别
- Ext.Ajax.request与form.getForm().submit的区别
- jquery提交form表单之ajaxForm() 和 ajaxSubmit()的区别