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

