日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Form表单插件jquery.form.js

發布時間:2024/10/12 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Form表单插件jquery.form.js 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

jQuery Form插件是一個優秀的Ajax表單插件,可以非常容易地、無侵入地升級HTML表單以支持Ajax。

jQuery Form有兩個核心方法 -- ajaxForm() 和 ajaxSubmit(), 它們集合了從控制表單元素到決定如何管理提交進程的功能。

另外,插件還包括其他的一些方法: formToArray()、formSerialize()、fieldSerialize()、fieldValue()、clearForm()、clearFields() 和 resetForm()等。

下載地址:?http://malsup.com/jquery/form/#download

核心方法 -- ajaxForm() 和 ajaxSubmit()

[javascript]?view plaincopyprint?
  • $('#myForm').ajaxForm(function()?{?????
  • ???$('#output1').html("提交成功!歡迎下次再來!").show();??????
  • });????
  • ?????????
  • $('#myForm2').submit(function()?{??
  • ???$(this).ajaxSubmit(function()?{?????
  • ??????$('#output2').html("提交成功!歡迎下次再來!").show();??????
  • ???});??
  • ???return?false;?//阻止表單默認提交??
  • });??
  • 通過Form插件的兩個核心方法,都可以在不修改表單的HTML代碼結構的情況下,輕易地將表單的提交方式升級為Ajax提交方式
    ajaxForm() 和 ajaxSubmit() 都能接受0個或1個參數,當為單個參數時,該參數既可以是一個回調函數,也可以是一個options對象,上面的例子就是回調函數,下面介紹options對象,使得它們對表單擁有更多的控制權

    [javascript]?view plaincopyprint?
  • var?options?=?{??
  • ???target:?'#output',??????????//把服務器返回的內容放入id為output的元素中??????
  • ???beforeSubmit:?showRequest,??//提交前的回調函數??
  • ???success:?showResponse,??????//提交后的回調函數??
  • ???//url:?url,?????????????????//默認是form的action,?如果申明,則會覆蓋??
  • ???//type:?type,???????????????//默認是form的method(get?or?post),如果申明,則會覆蓋??
  • ???//dataType:?null,???????????//html(默認),?xml,?script,?json...接受服務端返回的類型??
  • ???//clearForm:?true,??????????//成功提交后,清除所有表單元素的值??
  • ???//resetForm:?true,??????????//成功提交后,重置所有表單元素的值??
  • ???timeout:?3000???????????????//限制請求的時間,當請求大于3秒后,跳出請求??
  • }??
  • ??
  • function?showRequest(formData,?jqForm,?options){??
  • ???//formData:?數組對象,提交表單時,Form插件會以Ajax方式自動提交這些數據,格式如:[{name:user,value:val?},{name:pwd,value:pwd}]??
  • ???//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){??
  • ???//dataType=xml??
  • ???var?name?=?$('name',?responseXML).text();??
  • ???var?address?=?$('address',?responseXML).text();??
  • ???$("#xmlout").html(name?+?"??"?+?address);??
  • ???//dataType=json??
  • ???$("#jsonout").html(data.name?+?"??"?+?data.address);??
  • };??
  • ??
  • $("#myForm").ajaxForm(options);??
  • ??
  • $("#myForm2").submit(funtion(){??
  • ???$(this).ajaxSubmit(options);??
  • ???return?false;???//阻止表單默認提交??
  • });??
  • 表單提交之前進行驗證:? beforeSubmit會在表單提交前被調用,如果beforeSubmit返回false,則會阻止表單提交

    [javascript]?view plaincopyprint?
  • beforeSubmit:?validate??
  • function?validate(formData,?jqForm,?options)?{?//在這里對表單進行驗證,如果不符合規則,將返回false來阻止表單提交,直到符合規則為止??
  • ???//方式一:利用formData參數??
  • ???for?(var?i=0;?i?<?formData.length;?i++)?{??
  • ???????if?(!formData[i].value)?{??
  • ????????????alert('用戶名,地址和自我介紹都不能為空!');??
  • ????????????return?false;??
  • ????????}??
  • ????}???
  • ??
  • ???//方式二:利用jqForm對象??
  • ???var?form?=?jqForm[0];?//把表單轉化為dom對象??
  • ??????if?(!form.name.value?||?!form.address.value)?{??
  • ????????????alert('用戶名和地址不能為空,自我介紹可以為空!');??
  • ????????????return?false;??
  • ??????}??
  • ??
  • ???//方式三:利用fieldValue()方法,fieldValue?是表單插件的一個方法,它能找出表單中的元素的值,返回一個集合。??
  • ???var?usernameValue?=?$('input[name=name]').fieldValue();??
  • ???var?addressValue?=?$('input[name=address]').fieldValue();??
  • ???if?(!usernameValue[0]?||?!addressValue[0])?{??
  • ??????alert('用戶名和地址不能為空,自我介紹可以為空!');??
  • ??????return?false;??
  • ???}??
  • ??
  • ????var?queryString?=?$.param(formData);?//組裝數據??
  • ????//alert(queryString);?//類似?:?name=1&add=2????
  • ????return?true;??
  • }??

  • 轉載于:https://www.cnblogs.com/moqiang02/p/4061304.html

    總結

    以上是生活随笔為你收集整理的Form表单插件jquery.form.js的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。