我这个问题题目问的不好。
没学过ajax,只是看程序的时候的问题。
<SCRIPT language=javascript>
<!-- 
var http_request = false;
var username_ok=false;
function send_request(url) {//初始化、指定处理函数、发送请求的函数
http_request = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) { //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {//设置MiME类别
http_request.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject) { // IE浏览器
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
http_request.onreadystatechange = processRequest;
// 确定发送请求的方式和URL以及是否同步执行下段代码
http_request.open("GET", url, true);
http_request.send(null);
}
// 处理返回信息的函数
    function processRequest() {
        if (http_request.readyState == 4) { // 判断对象状态
            if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
                username_ok=http_request.responseText;
            //  alert(username_ok);//我加的,很好很强大.已经注册是false,没有的话是true
            } else { //页面不正常
                alert("您所请求的页面有异常。");
            }
        }
    }

function isok(theform)
{
//username_ok=false;
if (theform.username.value=="")
  {
    alert("用户名不能为空!");
    theform.username.focus()  ;
    return (false);
  } send_request('tools/checkname.jsp?username='+theform.username.value);
 alert(username_ok);//检验username_ok的值

  if (username_ok==false)
  {
   alert("用户名已经被注册,请更换一个用户名。");
theform.username.focus();
return (false);
  }
......
我的问题是 username_ok的值不是单纯的false,是不是因为http_request.responseText 以文本字符串的方式返回服务器的响应,所以值是文本字符串啊,那我还想进行如上判断,应该怎么办啊?

解决方案 »

  1.   

    你在处理页面可以这样写啊。
    if(可以查到)
      out.println("noUserName");
    else
      out.println("useUserName");
    你就可以在前台回调回来哪里处理了。
    if(http_request.responseText=="noUserName")
      ....
    else
      ...
      

  2.   

    现在就是 if (username_ok==false) 
      { 
      alert("用户名已经被注册,请更换一个用户名。"); 
    theform.username.focus(); 
    return (false); 
      } 
    这里的if (username_ok==false) 有问题,,,,就想解决这儿而且测试的username_ok也对,哎,我都说不清了,,感谢楼上的,,你的方法我一时也不太会用,,,不想改动太多了,,,,
      

  3.   

    晕死。。看来你还没有学过ajax吧。。建议你学去了解后再做