171127之关于form表单提交ajaxForm和ajaxSubmit

来源:互联网 发布:二维任意点旋转矩阵 编辑:程序博客网 时间:2024/06/07 14:28

这两种方法都是实现form的ajax提交的方法

在使用这两种方法之前,首先需要安装form.js的插件,下载就不放了,网上一搜就有;

<script src="/Tool/HtmlPage/S45/js/jquery-form.js"></script>

一、首先说用法,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);     })

JS代码(ajaxSubmit):

        $(function(){           $('#submitbtn').click(function(){           $("form").ajaxSubmit(object);             })              })

参数也可以为一个回调函数

$(function(){$('#submitbtn').click(function(){     $("form").ajaxSubmit(function(data){                alert(data);           })        })          })

二、再说这两种方法的区别

这两种方法主要的却别是ajaxForm不能主动提交form,函数只是为提交表单做准备需要以submit来触发提交。而ajaxSubmit会主动提交表单,同时可以在点击其他按钮时也可以触发提交,不一定是submit按钮。

ajaxForm执行的时候其实相当于

 $("form").submit(function(){            $(this).ajaxSubmit();            return false;                    //此句解释了为什么ajaxSubmit会自动提交表单,想要阻止自动提交,必须return false;        })

转自:https://www.cnblogs.com/xiaosama/p/4747848.html

阅读全文
1 0
原创粉丝点击