Form表单插件jquery.form.js
常常使用到这个插件,但是老忘记怎么使用,现在对大家写的进行一定的整合。
使用插件实例:
一般的使用方法
<!-- 引入jquery文件 --> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script> <script src="http://malsup.github.com/jquery.form.js"></script> <!-- form表单 --> <form id="my_form" action="submit.php" method="post"> <p>姓名:<input type="text" name="uname" id="uname" class="input"></p> <p>性别:<input type="radio" name="sex" value="1" checked> 男 <input type="radio" name="sex" value="2"> 女 </p> <p>年龄:<input type="text" name="age" id="age" class="input" style="width:50px"></p> <p style="margin-left:30px"><input type="submit" class="btn" value="提交"> <span id="msg"></span></p> </form> <div id="output"></div>
- $(function(){
- var options = {
- beforeSubmit: showRequest, //提交前处理
- success: showResponse, //处理完成
- resetForm: true,
- dataType: 'json'
- };
- $('#my_form').submit(function() {
- $(this).ajaxSubmit(options);
- return false;
- });
- });
- function showRequest(formData, jqForm, options) {
//formData: 数组对象,提交表单时,Form插件会以Ajax方式自动提交这些数据,格式如:[{name:user,value:val },{name:pwd,value:pwd}]
$.each(formData,function(i,value){
if(value.name == "editreason[]"){
if(value.value == ""){
Gafin.common.alert("修改原因不能为空","exclamation");
}
}
});
//jqForm: jQuery对象,封装了表单的元素
//options: options对象
var queryString = $.param(formData); //name=1&address=2
var formElement = jqForm[0]; //将jqForm转换为DOM对象
var address = formElement.address.value; //访问jqForm的DOM元素
return true; //只要不返回false,表单都会提交,在这里可以对表单元素进行验证
- }
- function showResponse(responseText, statusText) {
- $("#msg").html('提交成功');
- var sex = responseText.sex==1?"男":"女";
- $("#output").html("姓名:"+responseText.uname+" 性别:"+sex+" 年龄:"+responseText.age);
- }
options配置
url | Ajax请求将要提交到该url,默认是表单的action属性值 |
type | 指定提交表单数据的方法(method):“GET”或“POST”。默认值:表单的method属性值(如果没有找到默认为“GET”)。 |
dataType | 期望返回的数据类型。null、“xml”、“script”或者“json”其中之一。dataType提供一种方法,它规定了怎样处理服务器的响应。这个被直接地反映到jQuery.httpData方法中去。下面的值被支持: ‘xml’:如果dataType == ‘xml’,将把服务器响应作为XML来对待。同时,如果“success”回调方法被指定, 将传回responseXML值。 ‘json’:如果dataType == ‘json’, 服务器响应将被求值,并传递到“success”回调方法,如果它被指定的话。。 ‘script’:如果dataType == ‘script’, 服务器响应将求值成纯文本。。 默认值:null(服务器返回responseText值) |
target | 指明页面中由服务器响应进行更新的元素。元素的值可能被指定为一个jQuery选择器字符串,一个jQuery对象,或者一个DOM元素。 默认值:null。 |
beforeSubmit | 表单提交前被调用的回调函数。“beforeSubmit”回调函数作为一个钩子(hook),被提供来运行预提交逻辑或者校验表单数据。如果
“beforeSubmit”回调函数返回false,那么表单将不被提交。“beforeSubmit”回调函数带三个调用参数:数组形式的表单数
据,jQuery表单对象,以及传入ajaxForm/ajaxSubmit中的Options对象。 默认值:null |
success | 表单成功提交后调用的回调函数。如果提供“success”回调函数,当从服务器返回响应后它被调用。然后由dataType选项值决定传回responseText还是responseXML的值。 默认值:null |
clearForm | 表示如果表单提交成功是否清除表单数据。默认值:null |
resetForm | 表示如果表单提交成功是否进行重置。默认值: null |