ajax怎么实现用户名验证啊?。 我用ssh整合做的一个用户增删查该的小练习.里面没什么内容。就是在action,service,dao层写了一些增删查该的方法。人啊后写了配置文件。。现在需要在增加的时候对名称做个名称是否重复的一个验证。请教各位,具体怎么写啊。。要具体点的啊。。谢谢大家了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.w3school.com.cn/ajax/index.asp或直接用JQUERY后台就是写个action var request = false;if (window.ActiveXObject){ try { request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e){ try { request = new ActiveXObject("Microsoft.XMLHTTP"); } catch(ee){ request = false; } }} else { try { request = new XMLHttpRequest(); } catch (e){ request = false; }}/** * 验证用户名 */function validateUserName(userName){ if (!request){ alert("Error initializing XMLHttpRequest!"); } var url = "http://localhost:port/contextPath/validateUserName?userName=" + userName; // 设置回调函数 request.onreadystatechange = refreshInfo; // 异步请求 url request.open("GET",url,true); // 将请求发往 服务端 request.send(null); }/** * 回调函数 */function refreshInfo(){ // 响应已经完成 if (request.readyState == 4){ // 响应结果正确 if (request.status == 200 || request.status == 0){ var val = request.responseText; document.getElementById("infoId").innerHTML = val; } }} 如果用jquery就比较简单,$.post("<%=path%>/user.do?op=doValidateName",{name:cpname},parseBackName,"json");就可以搞定,第一个参数是url,表示在action要执行的方法,{name:cpname}要传到后台的参数,key:value形式,parseBackName回调函数,json:返回数据格式function parseBackName(data){ var flag = data.flag; if(flag == 1) { $("#errorName").text("用户名已存在,请更换!"); $("#userName").focus(); } else if(flag == 0) { $("#errorName").text(""); }}如果是DWR,那就有点麻烦,要配这配那!DWR我已经快二年没用了! 简单来说。。JS实现AJAX用HTTP请求的方式将用户名传递到Action中对应的Action方法里,然后根据用户名进行查询操作判断返回值是否为空(Null),以确定用户名是否被占用 用jQuery+AJAX验证JS代码: function check(){ var name=$("#name"); //引处name为输入框的id $.ajax({ type:"post", url:check.action//在后台配置一个AJAX的action.此处check为后台的验证方法。 data:{ uname : name //此处的uname为后台定义的接收前台传入的值的变量。需写好 getter,setter方法。 }, dataType:"json", success:callback,//回调函数 async:false });}function callback(data){if(data.exist)//提示出错信息return false;else{return true;}}后台的验证只需要将接收到的uname与数据库中的数据比较即可! <script type="text/javascript" src="js/jquery.js"></script>这个是引入的jquery的js文件,你这个文件肯定是要用的嘛,这样引用后,就可以按照我说的来做了! 页面上可以通过:$.post("<%=path%>/user.do?op=doValidateName",{name:cpname},parseBackName,"json");来提交到action呀,不过action里的方法要返回一个null,用PrintWriter来把结果输出到客户端 Ajax本身就可以异步通信啊,通过path寻找路径进行校验,然后讲讲检验结果返回到前台进行处理,很简单的。LZ感兴趣可以加入59673719(IT精英)群,里面很多人都可以回答你,如果需要这方面的案例,可以向群主要。 利用spring中this.getHibernateTemplate().execute()进行批量删除不成功,各位帮忙解决下? mybatis如何调用存储过程 关于学习JAVA javascript的问题 用itext在pdf中画虚线 hibernate查询结果类型转换异常 ActionForm bean中的reset()方法是干什么用的? 数组的问题! 请帮忙看一下我的这段代码出什么问题了,关于jsp访问数据库的。 java和xml问题! 新人想接触struts2,各位大虾推荐推荐... 从数据库取出来的东西动态的添加到select下拉框中
或直接用
JQUERY后台就是写个action
if (window.ActiveXObject){
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e){
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch(ee){
request = false;
}
}
} else {
try {
request = new XMLHttpRequest();
} catch (e){
request = false;
}
}
/**
* 验证用户名
*/
function validateUserName(userName){
if (!request){
alert("Error initializing XMLHttpRequest!");
}
var url = "http://localhost:port/contextPath/validateUserName?userName=" + userName;
// 设置回调函数
request.onreadystatechange = refreshInfo;
// 异步请求 url
request.open("GET",url,true);
// 将请求发往 服务端
request.send(null);
}
/**
* 回调函数
*/
function refreshInfo(){
// 响应已经完成
if (request.readyState == 4){
// 响应结果正确
if (request.status == 200 || request.status == 0){
var val = request.responseText;
document.getElementById("infoId").innerHTML = val;
}
}
}
function parseBackName(data)
{
var flag = data.flag;
if(flag == 1)
{
$("#errorName").text("用户名已存在,请更换!");
$("#userName").focus();
}
else if(flag == 0)
{
$("#errorName").text("");
}
}如果是DWR,那就有点麻烦,要配这配那!DWR我已经快二年没用了!
JS代码:
function check(){
var name=$("#name"); //引处name为输入框的id
$.ajax({
type:"post",
url:check.action//在后台配置一个AJAX的action.此处check为后台的验证方法。
data:{
uname : name //此处的uname为后台定义的接收前台传入的值的变量。需写好 getter,setter方法。
},
dataType:"json",
success:callback,//回调函数
async:false
});
}
function callback(data){
if(data.exist)
//提示出错信息
return false;
else{
return true;
}
}后台的验证只需要将接收到的uname与数据库中的数据比较即可!
<script type="text/javascript" src="js/jquery.js"></script>
这个是引入的jquery的js文件,你这个文件肯定是要用的嘛,这样引用后,就可以按照我说的来做了!
来提交到action呀,不过action里的方法要返回一个null
,用PrintWriter来把结果输出到客户端