现在的位置: 首页 > web前端 > 正文

怎样检测AJAX用户名是否存在?

2020年06月11日 web前端 ⁄ 共 1560字 ⁄ 字号 评论关闭

  用户注册时,需要填写个人信息,其中包括用户名。当用户输入完成时,JavaScript 需要及时检测用户名是否存在,如果存在给出提示,请用户更换用户名。下面学步园小编来讲解下怎样检测AJAX用户名是否存在?

  怎样检测AJAX用户名是否存在

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

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

  前台代码:

  p>

  请输入用户名:input type="text" id="demo" />

  span id="result">/span>

  /p>

  script type="text/javascript">

  document.getElementById("demo").onblur=function(){ // 输入框失去焦点

  var thisNode=this;

  var span=document.getElementById("result");

  var xmlhttp;

  try{

  // code for IE7+, Firefox, Chrome, Opera, Safari

  xmlhttp=new XMLHttpRequest();

  }catch(e){

  // code for IE6, IE5

  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

  }

  xmlhttp.onreadystatechange=function(){

  if(xmlhttp.readyState4){ // 正在交互

  span.style.color="blue";

  span.innerHTML="正在检测...";

  }

  if (xmlhttp.readyState==4 && xmlhttp.status==200){ // 请求成功

  if(parseInt(xmlhttp.responseText)){ // 将服务器返回的数据转换为整数

  span.style.color="red";

  span.innerHTML="抱歉,您填写的用户名已经存在!";

  }else{

  span.style.color="green";

  span.innerHTML="恭喜你,填写正确!";

  怎样检测AJAX用户名是否存在

  }

  }

  }

  xmlhttp.open("POST","/demo/javascript/ajax/ajaxDemo.php?action=checkUserName",true);

  xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

  xmlhttp.send("username="+thisNode.value);

  }

  /script>

  后台代码(PHP):

  ?php

  if($_GET['action']=="checkUserName"){

  // 为简单起见,这里不再查询数据库,使用 3 个用户名作为示例

  if(

  $_POST['username']=="admin"||

  $_POST['username']=="xiaoming"||

  $_POST['username']=="zhangsan"

  ){

  echo 1;

  }else{

  echo 0;

  }

  }

  ?>

  以上就是关于“怎样检测AJAX用户名是否存在”的内容,希望对大家有用。更多资讯请关注学步园。学步园,您学习IT技术的优质平台!

抱歉!评论已关闭.