doutao6380 2014-11-13 05:31
浏览 212

XMLHttpRequest()在函数中返回响应[重复]

This question already has an answer here:

I have a function isOnline(), which looks like this:

function isOnline() {
    var request=new XMLHttpRequest(); 

    request.onreadystatechange=function() {
        if(request.readyState==4) {
            if(request.responseText=="online")
                return true;    
        }    
    }
    request.open("GET","onlinecheck.php?user=user",false);
    request.send();

    return false;
}

If I run document.write(isOnline()); for testing , I ALWAYS get false, (undefined if i dont write return false; , I get undefined.

How do I 'wait' before the readyState is 4 and return true after that ?

</div>
  • 写回答

1条回答 默认 最新

  • douchun3680 2014-11-13 06:02
    关注

    You need to focus on few things:


    In case you decide to do it synchronously:

    function isOnline() {
        var request=new XMLHttpRequest(); 
    
        request.open("GET","www.google.com/",false);
        request.send();
    
        /* check the readyState, you can also check for status code */
        if (request.readyState === 4)
            // put other conditions here if you need to    
            return true;
        else
            return false;
    }
    
    // It returns true
    
    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题