JQuery validate插件驗(yàn)證用戶注冊(cè)信息
來(lái)源:易賢網(wǎng) 閱讀:1132 次 日期:2016-07-01 14:14:16
溫馨提示:易賢網(wǎng)小編為您整理了“JQuery validate插件驗(yàn)證用戶注冊(cè)信息”,方便廣大網(wǎng)友查閱!

這篇文章主要為大家詳細(xì)介紹了JQuery validate插件驗(yàn)證用戶注冊(cè)信息的具體代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

使用JQuery的validate插件做客戶端驗(yàn)證非常方便,下面做一個(gè)使用validate插件驗(yàn)證用戶注冊(cè)信息的例子。

本實(shí)例使用的是1.5版本。

示例是在SSH下做的,代碼如下:

registe.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 

<html> 

<head> 

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 

<title>注冊(cè)頁(yè)面</title> 

<mce:script type="text/javascript" src="js/jquery.1.4.2.js" mce_src="js/jquery.1.4.2.js"></mce:script> 

<mce:script type="text/javascript" src="js/validate/jquery.validate.js" mce_src="js/validate/jquery.validate.js"></mce:script> 

<link href="js/validate/jquery.validate.css" mce_href="js/validate/jquery.validate.css" type="text/css" rel="stylesheet"/> 

<mce:script type="text/javascript"><!-- 

//擴(kuò)展validator的校驗(yàn)方法 

$.validator.addMethod("onlyLetterAndDigit",function(value, element, params){ 

 var regex=new RegExp('^[0-9a-zA-Z]+$'); 

 return regex.test(value); 

},"只能輸入字母或數(shù)字"); 

$(function(){ 

 $("#registe").validate({ 

 //定義驗(yàn)證規(guī)則,其中屬性名為表單的name屬性 

 rules:{ 

 username:{ 

 required:true, 

 onlyLetterAndDigit:true,//使用自定義方法限制只能輸入字母或數(shù)字 

 rangelength:[4,20], 

 remote:"registe!validName.action"http://使用AJAX異步校驗(yàn) 

 }, 

 password:{ 

 required:true, 

 rangelength:[4,20] 

 }, 

 chkpassword:{ 

 required:true, 

 equalTo:"#password" 

  }, 

 email:{ 

 required:true, 

 email:true 

  }, 

 vercode:"required" 

 }, 

 messages:{ 

 username:{ 

 required:"請(qǐng)輸入用戶名", 

 rangelength:"用戶名長(zhǎng)度必須在4~20位之間", 

 remote:$.format("用戶名{0}已存在,請(qǐng)重新輸入!") 

 }, 

 password:{ 

 required:"請(qǐng)輸入密碼", 

 rangelength:"密碼長(zhǎng)度必須在4~20位之間" 

 }, 

 chkpassword:{ 

 required:"請(qǐng)?jiān)俅屋斎朊艽a", 

 equalTo:"密碼輸入不一致,請(qǐng)重新輸入" 

  }, 

 email:{ 

 required:"請(qǐng)輸入電子郵件", 

 email:"請(qǐng)輸入合法的電子郵件" 

  }, 

 vercode:{ 

 required:"請(qǐng)輸入驗(yàn)證碼" 

  } 

 } 

 }); 

}); 

//刷新驗(yàn)證碼 

function refresh() 

$("#authImg").src="authImg?now="+new Date(); 

// --></mce:script> 

</head> 

<body> 

<form action="registe.action" method="post" id="registe"> 

<table> 

 <caption><h2>用戶注冊(cè)</h2></caption> 

 <tr> 

 <td>用 戶 名:</td><td><input type="text" name="username" id="username"/></td> 

 </tr> 

 <tr> 

 <td>密 碼:</td><td><input type="text" name="password" id="password"/> </td> 

 </tr> 

 <tr> 

 <td>確認(rèn)密碼:</td><td><input type="text" name="chkpassword"/></td> 

 </tr> 

 <tr> 

 <td>Email:</td><td><input type="text" name="email"/></td> 

 </tr> 

 <tr> 

 <td>驗(yàn)證碼:</td><td valign="bottom"><input type="text" name="vercode" size="10"/> <img alt="" src="authImg" mce_src="authImg" id="authImg" align="absmiddle"><a href="#" mce_href="#" onclick="refresh()"><span style="font-size:12px" mce_style="font-size:12px">刷新驗(yàn)證碼</span></a></td> 

 </tr> 

 <tr> 

 <td colspan="2"><input type="submit" value="提交"/><input type="reset" value="重填"/></td> 

 </tr> 

</table> 

</form> 

</body> 

</html> 

后臺(tái)RegisteAction.java的主要方法

public String execute() throws Exception { 

 Map session = ActionContext.getContext().getSession(); 

 String ver2 = (String) session.get("rand"); 

 session.put("rand", null); 

 //判斷驗(yàn)證碼是否正確 

 if (vercode.equals(ver2)) { 

 if (userManager.validName(username)) { 

 if (userManager.addUser(username, password, email) > 0) 

 return SUCCESS; 

 else

 addActionError("注冊(cè)失敗,請(qǐng)重試!"); 

 } else { 

 addActionError("該用戶名已存在,請(qǐng)重新輸入!"); 

 } 

 } else { 

 addActionError("驗(yàn)證碼不匹配,請(qǐng)重新輸入"); 

 } 

 return INPUT; 

//驗(yàn)證用戶名是否可用 

public String validName() throws Exception { 

 System.out.println(username); 

 boolean flag = userManager.validName(username); 

 HttpServletResponse response = ServletActionContext.getResponse(); 

 response.setDateHeader("Expires", 0); 

 response.addHeader("Pragma", "no-cache"); 

 response.setHeader("Cache-Control", "no-cache"); 

 response.setContentType("text/plain;charset=UTF-8"); 

 if (flag) 

 response.getWriter().write("true"); 

 else

 response.getWriter().write("false"); 

 response.getWriter().flush(); 

 // 因?yàn)橹苯虞敵鰞?nèi)容而不經(jīng)過(guò)jsp,因此返回null. 

 return null; 

效果圖如下:

名單

注意:使用remote異步驗(yàn)證用戶名的方法應(yīng)該通過(guò)response.getWriter().write("true")來(lái)輸出,而不能像普通方法一樣返回字符串。

關(guān)于插件更詳細(xì)的介紹可以查看“jQuery validate驗(yàn)證插件使用詳解”。

另外,jQuery也支持動(dòng)態(tài)給控件添加校驗(yàn),例如:

復(fù)制代碼 代碼如下:

("#email").rules("add", { required: true, email: true }); 

但要注意:如果對(duì)集合中的元素動(dòng)態(tài)添加校驗(yàn)需要循環(huán)對(duì)每個(gè)元素添加,這是因?yàn)閖Query隱式實(shí)現(xiàn)了集合操作,但validate插件沒(méi)有。例如:

$(".quantity").each(function(){ 

 $(this).rules("add",{digits:true,required:true}); 

}); 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。

更多信息請(qǐng)查看網(wǎng)絡(luò)編程
易賢網(wǎng)手機(jī)網(wǎng)站地址:JQuery validate插件驗(yàn)證用戶注冊(cè)信息
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國(guó)考·省考課程試聽(tīng)報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)