jQuery Validate插件ajax方式驗(yàn)證輸入值的實(shí)例
項(xiàng)目中經(jīng)常會(huì)遇到需要后臺(tái)驗(yàn)證問(wèn)題,如用戶(hù)名、用戶(hù)賬號(hào)是否存在等。使用jQuery Validate插件可以使用remote校驗(yàn)規(guī)則完成驗(yàn)證。
示例:
一.基本用法
1.需要驗(yàn)證的表單
<form id="registForm"> <input type="text" id="username" name="username"> </form>
2.js
使用remote校驗(yàn)規(guī)則,最簡(jiǎn)單粗暴的寫(xiě)法是remote: url,此時(shí)請(qǐng)求的url后面自動(dòng)拼接當(dāng)前驗(yàn)證的值,例如下面的寫(xiě)法,請(qǐng)求的url為:xxx/checkUsername.do?username=test
// 導(dǎo)入jquery、validte庫(kù)略 $(function() { $.validator.setDefaults({ submitHandler: function(form) { // 驗(yàn)證通過(guò)處理 ... } }); $("#registForm").validate({ rules: { username: { required: true, remote: "checkUsername.do" }, }, messages: { username: { required: "用戶(hù)名不能為空", remote: "用戶(hù)名已經(jīng)存在" } } }); });
3.后臺(tái)(Spring MVC測(cè)試)
后臺(tái)響應(yīng)只能輸出true或false,不能有其他數(shù)據(jù),true:驗(yàn)證通過(guò),false:驗(yàn)證失?。辉O(shè)置返回類(lèi)型為boolean或String都可以
(1).返回boolean
@RequestMapping("/checkUsername") public @ResponseBody boolean checkUsername(@RequestParam String username) { // 測(cè)試 return !"test".equals(username); }
(2).返回String
@RequestMapping("/checkUsername") public @ResponseBody String checkUsername(@RequestParam String username) { // 測(cè)試 return !"test".equals(username) ? "true" : "false"; }
二.其他用法
上面的用法不能滿(mǎn)足實(shí)際的需求,有時(shí)候會(huì)有需要提交其他參數(shù)、參數(shù)名和屬性名不一致或請(qǐng)求方式為POST的情況,寫(xiě)法如下:
1.js
使用data選項(xiàng),也就是jQuery的$.ajax({...})的寫(xiě)法;
提交的數(shù)據(jù)需要通過(guò)函數(shù)返回值的方式,直接寫(xiě)值有問(wèn)題;
默認(rèn)會(huì)提交當(dāng)前驗(yàn)證的值,也就是下例中的 username: xxx會(huì)被默認(rèn)作為參數(shù)提交
.... username: { required: true, remote: { url: "checkUsername.do", type: "post", //數(shù)據(jù)發(fā)送方式 dataType: "json", //接受數(shù)據(jù)格式 data: { //要傳遞的數(shù)據(jù) username: function() { return $("#username").val(); }, extra: function() { return "額外信息"; } } } }
2.后臺(tái)
限制了必須為POST方式請(qǐng)求
@RequestMapping(value = "/checkUsername", method = RequestMethod.POST) public @ResponseBody boolean checkUsername(User user, @RequestParam String extra) { // 測(cè)試 System.out.println(extra); return !"test".equals(user.getUsername()); }
參考文章:http://www.runoob.com/jquery/jquery-plugin-validate.html
以上這篇jQuery Validate插件ajax方式驗(yàn)證輸入值的實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- jquery validate 實(shí)現(xiàn)動(dòng)態(tài)增加/刪除驗(yàn)證規(guī)則操作示例
- jQuery Validate 相關(guān)參數(shù)及常用的自定義驗(yàn)證規(guī)則
- JQuery validate 驗(yàn)證一個(gè)單獨(dú)的表單元素實(shí)例
- 詳解jquery validate實(shí)現(xiàn)表單驗(yàn)證 (正則表達(dá)式)
- jQuery驗(yàn)證插件validate使用方法詳解
- jquery表單驗(yàn)證插件(jquery.validate.js)的3種使用方式
- jQuery validate(submitHandler函數(shù))驗(yàn)證通過(guò)發(fā)送Ajax(實(shí)例詳解)
相關(guān)文章
jquery 綁定回車(chē)動(dòng)作撲捉回車(chē)鍵觸發(fā)的事件
這篇文章主要介紹了jquery如何撲捉回車(chē)鍵觸發(fā)的事件,需要的朋友可以參考下2014-03-03JQuery特殊效果和鏈?zhǔn)秸{(diào)用操作示例
這篇文章主要介紹了JQuery特殊效果和鏈?zhǔn)秸{(diào)用操作,結(jié)合實(shí)例形式分析總結(jié)了jQuery各種常見(jiàn)顯示效果與所使用的函數(shù),以及鏈?zhǔn)秸{(diào)用顯示層級(jí)菜單功能相關(guān)操作技巧,需要的朋友可以參考下2019-05-05asp.net下使用jquery 的ajax+WebService+json 實(shí)現(xiàn)無(wú)刷新取后臺(tái)值的實(shí)現(xiàn)代碼
asp.net下使用jquery 的ajax+WebService+json 實(shí)現(xiàn)無(wú)刷新取后臺(tái)值的實(shí)現(xiàn)代碼 ,比頁(yè)面刷新更好,用戶(hù)體驗(yàn)更好,需要的朋友可以參考下。2010-09-09Easyui Treegrid改變默認(rèn)圖標(biāo)的方法
這篇文章主要介紹了Easyui Treegrid改變默認(rèn)圖標(biāo)的方法的相關(guān)資料,需要的朋友可以參考下2016-04-04jquery實(shí)現(xiàn)帶漸變淡入淡出并向右依次展開(kāi)的多級(jí)菜單效果實(shí)例
這篇文章主要介紹了jquery實(shí)現(xiàn)帶漸變淡入淡出并向右依次展開(kāi)的多級(jí)菜單效果,涉及jquery鼠標(biāo)事件及頁(yè)面元素動(dòng)態(tài)樣式設(shè)置的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08jquery基本選擇器匹配多個(gè)元素的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇jquery基本選擇器匹配多個(gè)元素的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09jquery+php實(shí)現(xiàn)滾動(dòng)的數(shù)字特效
本文將結(jié)合實(shí)例使用jquery背景動(dòng)畫(huà)插件,將數(shù)字作為背景圖片,定時(shí)讓背景圖片滾動(dòng)起來(lái),從而實(shí)現(xiàn)了滾動(dòng)數(shù)字的效果,感興趣的小伙伴們可以參考一下2015-11-11jQuery插件echarts實(shí)現(xiàn)的多柱子柱狀圖效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery插件echarts實(shí)現(xiàn)的多柱子柱狀圖效果,結(jié)合完整實(shí)例形式分析了echarts繪制多柱子柱狀圖效果的操作步驟與相關(guān)實(shí)現(xiàn)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03