layui的表单验证支持ajax判断用户名是否重复

   在一个表单中,在提交前我们想判断该用户名是否存在,在layui中不支持。onblur()失去焦点事件,用按钮来手动触发,表单又不太美观,可以使用form表单的verify来进行验证。

html:

<div class="layui-form-item">
	<label class="layui-form-label">用户名</label>
	<div class="layui-input-block">
	<input type="text" id="username" name="username" autocomplete="off"
			class="layui-input"  lay-verify="username"  placeholder="请输入用户名">
		</div>
	</div>

注意lay-verify="username" ,在js文件中定义验证事件。

js:

form.verify({
	//将用户名是否可用作为验证条件  表单提交时触发
	,username:function(value){
		var datas={username: value};
		var message = '';
		$.ajax({
			type:"POST",
			url:xxx(对应后台的方法),
			async: false, //改为同步请求
			contentType:'application/json;charset=UTF-8',
			data:JSON.stringify(datas),
			dataType:'json',
			success:function(data){
				if(data){
					
				}else{
					message ="用户名已存在,请重新输入!"
				}
			}
		});
		//需要注意  需要将返回信息写在ajax方法外
		if (message !== '') 
          	return message;
	}
});

后台的方法:

//管理员注册时验证用户名是否可用
	@RequestMapping(value="/xxx",method=RequestMethod.POST,consumes="application/json")
	@ResponseBody
	public boolean toVerifyUsername(@RequestBody Admin admin) {
		String username=admin.getUsername();
		System.out.println(username);
		//根据用户名查询管理员(包括status为0的   以防恢复引起bug)
		Admin admin1=adminService.findByUsernameno(username);
		if(admin1==null)
		{
			System.out.println(111);
	   //返回true则为没有该用户名可以被注册
		return true;	
	}else {
		System.out.println(222);
		return false;
	}
  }

效果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值