BootStrap表单验证用户名重复

时间:2023-03-09 17:15:41
BootStrap表单验证用户名重复

html:

 <div class="form-group">
<label for="username" class="control-label col-md-3 col-sm-4">账号</label>
<div class="col-md-9 col-sm-8">
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-user"></span></span>
<input type="text" class="form-control" id="username" name="username" placeholder="请输入昵称"/>
</div>
</div>
</div>

js:

 <script type="text/javascript">
$(function () {
//alert(123)
$("#regist_form").bootstrapValidator({
live: 'enabled', //验证时机,enabled是内容有变化就验证(默认),disabled和submitted是提交再验证
excluded: [':disabled', ':hidden', ':not(:visible)', ':file'], //排除无需验证的控件,比如被禁用的或者被隐藏的
submitButtons: '#reg-btn', //指定提交按钮,如果验证失败则变成disabled,按钮变灰色
message: '通用的验证失败消息', //好像从来没出现过
feedbackIcons: { //根据验证结果显示的各种图标
valid: 'glyphicon glyphicon-ok',
invalid: 'glyphicon glyphicon-remove', //小叉号
validating: 'glyphicon glyphicon-refresh'
},
fields: {
username: {
verbose: false, //代表验证按顺序验证。验证成功才会下一个(验证成功才会发最后一个remote远程验证)
validators: {
notEmpty: {
message: '账号不能为空'
},
stringLength: {
min: 6,
max: 30,
message: '账号长度必须在6到30之间'
},
threshold: 6,//有6字符以上才发送ajax请求 remote: { //ajax验证。server result:{"valid",true or false} (返回前台类型)
url: "stu-exist",
message: '用户名已存在,请重新输入',
delay: 500, //ajax刷新的时间是0.5秒一次
type: 'POST',
//自定义提交数据,默认值提交当前input value
/*data: function (validator) {
return {
userName: $("input[name=userName]").val(),
//method: "stuIsExist" //UserServlet判断调用方法关键字。 };
}*/
},
}
},
} });
})
</script>

StuService:

 //验证账号是否存在(用户注册)
Boolean stuIsExist(String username);

StuServiceImpl:

     /**
* @Description //验证账号是否存在
* @Date 2019-04-01 17:39
* @Param [username]
* @return java.lang.Boolean
**/
@Override
public Boolean stuIsExist(String username) { UserExample userExample = new UserExample();
UserExample.Criteria criteria = userExample.createCriteria();
criteria.andUsernameEqualTo(username);
List<User> userList = userMapper.selectByExample(userExample);
if (userList.isEmpty()) {
return true;
} else {
return false;
} }

RegisterController.java:

     /**
* @Description //验证账号是否存在
* @Date 2019-04-01 17:43
* @Param [username]
* @return java.util.Map<java.lang.String,java.lang.Boolean>
**/
@PostMapping("stu-exist")
@ResponseBody
public Map<String,Boolean> stuIsExist(String username){
Boolean stuIsExist = stuService.stuIsExist(username);
Map<String,Boolean> map = new HashMap<String,Boolean>(); //map.put("valid",true);
if (stuIsExist){
map.put("valid",true);
}else {
map.put("valid",false);
} System.out.println(username+map);
return map;
}