日期:2014-05-17  浏览次数:20934 次

Ajax技术问题(注册验证账号是否存在)
$('#user').blur(function(){ 
var p=$("#user")[0].value;
var patrn=/^(\w){5,20}$/;
if(!patrn.exec(p)){
$('#chkUser').remove();
$('#user').after('<span id="chkUser" class="errdiv">登录账号必须由5-20个英文字母或数字组成</span>');
flag=false;
}else{

$.ajax({
type: "POST",
url: "post.action",
data: {"user":p},
success: function(msg){

if(msg=="1"){
$('#chkUser').remove();
$('#user').after('<span id="chkUser" class="rightdiv">该登录账号可以使用</span>');
}else{
$('#chkUser').remove();
$('#user').after('<span id="chkUser" class="errdiv">该登录账号已经被使用,请更换一个</span>');
flag=false;
}
}

});

}
}); 

问:为什么我输入一个可用的账号是离开之后没有显示“该登录账号可以使用”?

------解决方案--------------------
jsp页面:
<div class="row">
 <div class="left">登录账号:</div> <div class="mustfill">*</div>
 <div class="con">
 <input type="text" id="user" name="account" class="input" style="width:200px" value="" />
 </div>
</div>
------解决方案--------------------
<script>
 $(function(){
$("#name").blur(function(){
//获取输入的用户名
var name=this.val();
if(name == ""){
$("#name\\-info").html="用户名不能为空";
return;
}
//验证格式是否正确
var mage=/^[A-Za-z0-9]{5,20}$/;
if(!mage.test(name)){
$("#name\\-info").html="用户名格式不正确";
return;
}
//去服务器验证name是否可用 要去数据库查询比较 
$.post("validName.action",{"name":name},function(ok){
if(ok){
$("#email\\.info").html("用户名可用");
}else{
$("#email\\.info").html("用户名被占用");
}
});
});
 });
</script>

<table>
 <tr>
<td>
用户名
<td/>
<td>
<input type="text" id="name"/>
<span id="name-info"/> 
<td/>
<td>
密码
<td/>
<td>
<input type="password" id="password"/>
<span id="pwd-info"/> 
<td/>
</table>

------解决方案--------------------
不好意思 上面那个$("#email\\.info").html("用户名可用"); 写错了 是
$("#name\\-info").html("用户名可用");
下面一个也是的 谢谢