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

关于servlet传值给Jquery(昵称验证是否已经注册)
做了一个验证昵称验证,已经可以判断它是否注册,但传值到servlet之后就不知道怎么传值给Jquery。麻烦各位帮忙看看。
以下是servlet部分代码:String userRegName = request.getParameter("userNAME"); 就是想把 userRegName 的值传递到Jquery中。

以下是Jquery部分代码:
//昵称失去焦点之后判断该昵称是否已经被注册了
$("#user_Name").blur(function() 
{
var userName = $("#user_Name").val();
if(find(userName)){
$('.error_Name').show();
}else{
$('.error_Name').hide();
}
});

//将昵称传值给UserReg并返回结果

function find(username){
var regName = username ;
var params= "userNAME="+regName;
$.ajax({
type:"POST",
url:"RegS",
data:params ,
success:testOk
});

}
//反调函数,判断是否已经注册过该昵称
function testOk(RegName){
//到这儿就不知道应该怎么写了。
}
马上大家给点意见,让小弟找点灵感!
 ps:如果可以在给点关于局部刷新昵称的就更好了。因为小弟发现,我判断过一次昵称之后,必须的重新部署下servlet才能再次判断,期望的效果是当昵称文本框多次失去焦点之后都能判断该昵称是否注册过。  感激不尽!

------解决方案--------------------
你在servlet判断昵称是不是存在,如果存在就把“该昵称已经存在”写到输出流,回调函数里把接收到的html直接加到对话框后面
------解决方案--------------------
可以后台传输一个json数据的数据 {isregester:true}
------解决方案--------------------
呵呵,个人感觉用异步提交很好很多

比这个简单,帮顶。祝楼主好运
------解决方案--------------------
关于包,有可能是缓存问题,你可以去tomcat目录下看一下。包是不是已经更新了。

一般你可以在你的页面定义一个全局变量

var flag = true; 是来标记是否可以提交。

在你的testOk()方法中,如果正确就在信息域提示,昵称可用。如果不正确,就提示不可用,然后将flag=false;

 在表单的onsubmit事件上,return flag;

------解决方案--------------------
另外有一点要注意 async:false
------解决方案--------------------
探讨

另外有一点要注意 async:false