functionvalidateEnameExsit(){
varename=$("#ename").val();
if($.trim(ename)==''){
$("#result").attr('color','#FF0000');
$("#result").html('用户名不能为空');
returnfalse;
}else{
$.ajax({
url:"empManagerAction!validateEname.do",//后台处理程序
type:"post",//数据发送方式
dataType:"json",//接受数据格式
data:"employeeForm.ename="+ename,//要传递的数据
cache:false,//禁用缓存
//回传函数
success:function(responsedata){
if(responsedata=='0'){
$("#result").attr('color','B3E6DF');
$("#result").html('恭喜!该用户名还未被注册!');
returntrue;
}elseif(responsedata=='1'){
$("#result").attr('color','#FF0000');
$("#result").html('对不起!用户名已存在!');
returnfalse;
}
}
});
}
}
解决方案很多,提供以下几个:
1
、在ajax方法外面定义临时遍历,接收boolean值也就是success中的值,这种方式需要同步才能接收到值
2
、可以把你的值放在$.dada()的缓存中保存;如:$(
"div"
).data(
"temp"
,true);alert($(
"div"
).data(
"temp"
));
3
、可以设置在属性中保存,然后取到。如果不想要了还可以删掉
$(this).
attr
(
"temp"
,true);
vartemp=false;
$.ajax({
type:
"post"
,//数据发送方式
dataType:
"json"
,//接受数据格式
data:
"employeeForm.ename="
+ename,//要传递的数据
cache:false,//禁用缓存
//回传函数
success:function(responsedata){
if(responsedata==
'0'
){
$(
"#result"
).
attr
(
'color'
,
'B3E6DF'
);
//returntrue;
temp=true;//$(
"#result"
).
attr
(
"temp"
,true);
}elseif(responsedata==
'1'
){
$(
"#result"
).
attr
(
'color'
,
'#FF0000'
);
//returnfalse;
temp=false;//$(
"#result"
).
attr
(
"temp"
,false);
}
}