1、给输入名字的文本框绑定一个失去焦点事件,jquery中为focusout事件,同时在文本框后定义一个显示检查结果的span。
2、当文本框失去焦点时,调用ajax异步向后台发送请求。
3、将请求结果显示在文本框后面提示用户,避免所有信息填写完毕表单提交时才发现名字重复。
示例:
//给文本框绑定一个失去焦点事件
$("#name").focusout(function() {
var name = $("#name").val();
if(name != null && name != ''){
checkName(name);
}
});
//发ajax请求到后台判断用户名是否重复
function checkName(name){
$.ajax({
url : servletUrl,
type : "post",
dataType : 'JSON',
data : {name:name},
success : function(result) {
//已经存在该名字提示用户
if(result == true){
$("#errorMsg").html("该用户名已经存在");
}else{
$("#errorMsg").html("恭喜您,用户名可以使用");
}
}
},
error : function() {
alert('检查用户是否存在发生错误');
}
});
}
您好:
整体思路如下;
在用户名输入框失去焦点的时候,通过Ajax请求后台程序,在后台程序中判断是否已经存在了,如果存在就返回一个标识,然后前端看到这个标识,就提示已经存在了。
当你输入完之后,鼠标焦点离开时调用方法,去后台数据库查一下,返回回来,判断有重复,提示重复
个人建议使用onkeyup进行实时监测,用户体验更好