浏览器开发工具提示我找不到"check_username() 我看了半天代码也没有问题啊 是我哪里写错了吗 请大神们指教啊 就是鼠标离开当前选项框 "check_username()方法不起作用 就是找不到 搞了好久也没 弄出来 请帮忙看看啊 
<html>
  <head>
   <style>
   .s1{
   color:red;
   font-size:24px;
   font-style:italic;
   }
   </style>
<script type="text/javascript" src="../js/prototype-1.6.0.3.js"></script>
<script type="text/javascript">
function getXmlHttpRequest(){
alert(222);
var xhr = null;
if((typeof XMLHttpRequest)!='undefined'){
xhr = new XMLHttpRequest();
}else{
xhr = new ActiveXObject('Microsoft.XMLHttp');
}
return xhr;
}
function check_username(){
//step1获得XmlHttpRequest对象
var xhr = getXmlHttpRequest();
alert(111);
//step2发送请求
xhr.open('get','check_username.do?username='+$F('username'),true);
xhr.onreadystatechange=function(){
//step4获取服务器返回的数据,更新页面
if(xhr.readyState==4&&xhr.status==200){
var txt = xhr.responseText;
$('username_msg').innerHTML = txt;
}else{
$('username_msg').innerHTML='系统错误,稍后重试';
}else{
$('username_msg').innerHTML='正在验证...';
}
};
xhr.send(null);
}
</script>
  </head>
  <body>
    <form action="" method="post">
   用户名:<input name="username" id="username" onblur="check_username();"/>
   <span class="s1" id="username_msg"></span>
   <br/>
   密&nbsp;&nbsp;码:&nbsp;<input type="password" name="pwd" id="pwd"><br/>
   <input type="submit" value="确认"/>
    </form>
  </body>
</html>
Ajax

解决方案 »

  1.   

    你把那段JS代码移动到boby下面就可以用了。。
    代码的加载是从上至下的。。
    或者加一个window.onload=方法{
    }
      

  2.   

    http://www.w3school.com.cn/xml/xml_http.asp
      

  3.   


    if(xhr.readyState==4&&xhr.status==200){
    var txt = xhr.responseText;
    $('username_msg').innerHTML = txt;
    }else{
    $('username_msg').innerHTML='系统错误,稍后重试';
    }else{
    $('username_msg').innerHTML='正在验证...';
    }这段语法错了
      

  4.   

    你这个js真是复杂呀,既然都用jquery了,把它的ajax拿过来用吧,还用原生态的js写个ajax!最起码能统一风格行不?还有返回处理结果那段:if ... else...else能通过吗?