05AJAX实例-检测用户名是否存在(实例)

Posted 魔芋铃

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了05AJAX实例-检测用户名是否存在(实例)相关的知识,希望对你有一定的参考价值。

AJAX实例-检测用户名是否存在

 
用户注册时,需要填写个人信息,其中包括用户名。当用户输入完成时,javascript 需要及时检测用户名是否存在,如果存在给出提示,请用户更换用户名。

当然,这个步骤可以在用户提交表单以后由后台程序检测,如果用户名已存在,用户需要返回注册页面重新填写用户名,而前面填写的其他信息也随着网页的跳转已经过期,全部需要重填,这对用户来说是极大的伤害。

因此,有必要使用 AJAX 在用户不提交信息的情况下及时检测用户名是否存在。

前台代码:
  1. <p>
  2. 请输入用户名:<input type="text" id="demo"/>
  3. <span id="result"></span>
  4. </p>
  5. <script type="text/javascript">
  6. document.getElementById("demo").onblur=function(){// 输入框失去焦点
  7. var thisNode=this;
  8. var span=document.getElementById("result");
  9. var xmlhttp;
  10. try{
  11. // code for IE7+, Firefox, Chrome, Opera, Safari
  12. xmlhttp=newXMLHttpRequest();
  13. }catch(e){
  14. // code for IE6, IE5
  15. xmlhttp=newActiveXObject("Microsoft.XMLHTTP");
  16. }
  17. xmlhttp.onreadystatechange=function(){
  18. if(xmlhttp.readyState<4){// 正在交互
  19. span.style.color="blue";
  20. span.innerhtml="正在检测...";
  21. }
  22. if(xmlhttp.readyState==4&& xmlhttp.status==200){// 请求成功
  23. if(parseInt(xmlhttp.responseText)){// 将服务器返回的数据转换为整数
  24. span.style.color="red";
  25. span.innerHTML="抱歉,您填写的用户名已经存在!";
  26. }else{
  27. span.style.color="green";
  28. span.innerHTML="恭喜你,填写正确!";
  29. }
  30. }
  31. }
  32. xmlhttp.open("POST","http://localhost/moyu.php?action=checkUserName",true);
  33. xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
  34. xmlhttp.send("username="+thisNode.value);
  35. }
  36. </script>
 

后台代码(PHP):
  1. <?php
  2. if($_GET[\'action\']=="checkUserName"){
  3. // 为简单起见,这里不再查询数据库,使用 3 个用户名作为示例
  4. if(
  5. $_POST[\'username\']=="admin"||
  6. $_POST[\'username\']=="xiaoming"||
  7. $_POST[\'username\']=="zhangsan"
  8. ){
  9. echo 1;
  10. }else{
  11. echo 0;
  12. }
  13. }
  14. ?>
 

实例演示(输入完成,请将焦点离开输入框):

请输入用户名:  


说明:"admin"、"xiaoming"和"zhangsan"三个用户名已存在。
 
 
魔芋测试:
 
 
 
3.gif



 

以上是关于05AJAX实例-检测用户名是否存在(实例)的主要内容,如果未能解决你的问题,请参考以下文章

在JSP页面下使用AJAX实现用户名存在的检测

java web中如何用ajax技术来检验注册的用户名数据库中是不是存在的实例?求大神赐教!!!!

jQuery如何检测某个元素是否存在

用ajax判断用户是否已存在?----2017-05-12

AJAX多文件上传

ajax常用实例代码总结参考