jQuery&validate验证:同名用户和字符限制。

4 篇文章 0 订阅
3 篇文章 0 订阅

工作中用到的,记录下来。新手一个,各位若有兴趣,可以留言讨论。

 

 

第一个:输入欲注册的用户名,即时验证该用户名是否存在。

 

一、JSP:

 

<form method="post" action="..." id="entpreg_stepfive">
	<label for="usercode">登录账户:</label>
	<input type="text" name="etp.userCode" id="usercode"/><span id="usercode_valid"></span>
</from>

 

二、JS:

$("#entpreg_stepfive").validate({
	rules:{
		'etp.userCode':{
			remote: {
				type: "post",
				url: "/powerSD/sdplat/etp/userCodeExist.action",
				data: {
					userCode: function() {
                            			return $("#etp.userCode").val();
					}
				},
				dataType: "html",
				dataFilter: function(data, type) {
					if (data == "true"){
						return true;
					}else{
						return false;
					}
				}
			}
		}
	},
	messages:{
		'etp.userCode':{
			remote: "用户名已被占用"
		}
	}
});
 

三、JAVA:

1)EtpManageAction.java

public void userCodeExist(){
	String sign = "false";
	String userCode = $("etp.userCode");
	if(this.getEtpManageService().userCodeExist(userCode)){ //即“2)”
		sign = "true";
	}
	super.renderText(sign); //开发框架的功能,可用“response.getWriter().print(sign)”代替
}
 

2)EtpManageServiceImpl.java

public boolean userCodeExist(String userCode){
	boolean sign = false;
	Map params = new HashMap();
	params.put("userCode", userCode);
	String userCodeS = this.ibatisDao.getString("etp-manage.findUserCodeForMap", params); //ibatis
	if(userCodeS == null){
		sign = true;
	}
	return sign;
}
 

3)sql-cust-manage.xml

<select id="findUserCodeForMap" parameterClass="hashMap" resultClass="String">
	select t.usercode
	from t_scm_cust_register t
	where t.userCode = #userCode#
</select>

 

----------------------------------------------------------------------------------------------------------------

第二个:限定用户名只可以是字母、数字和下划线

一、JSP:

<form method="post" action="..." id="entpreg_stepfive">
	<label for="usercode">登录账户:</label>
	<input type="text" name="etp.userCode" id="usercode"/><span id="usercode_valid"></span>
</from>
 

二、JS:

$(function(){
	jQuery.validator.addMethod("regex",
		function(value, element, params) {
			var exp = new RegExp(params);
			return exp.test(value);
		}, "格式错误");	
	$("#entpreg_stepfive").validate({
		rules:{
			'etp.userCode':{
				regex: "^\\w+$"
			}
		},
		messages:{
			'etp.userCode':{
				regex: "数字、字母或下划线"
			}
		}
	});
});

 

OVER!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值