基本的AJAX脚本不起作用

时间:2015-12-14 14:36:52

标签: javascript ajax

我尝试加载文件并使用AJAX将其显示在网页的div部分中。
控制台输出显示XMLHttpRequest对象已成功创建,但之后没有任何反应:永远不会调用回调函数,也不会获取URL的内容。

<body>
    <div id="demo"><p>Some text</p></div>
    <button type="button" onclick="loadDoc()">Request URL</button>
    <script>
        function loadDoc() {
            var xhttp;

            if (window.XMLHttpRequest) {
                xhttp = new XMLHttpRequest();
                console.log('object created'); // this message is printed
                } else if (window.ActiveXObject) {
                xhttp = new ActiveXObject("Mіcrosoft.XMLHTTP");
            }
            xhttp.onreadystatechange = function() {
                console.log('inside callback function'); // this message is never printed 
                if(xhttp.readyState == 4 && xhttp.status == 200) {
                    document.getElementById("demo").innerHTML = xhttp.responseText;
                }
                xhttp.open("GET", "http://tools.ietf.org/rfc/rfc6120.txt", true);
                xhttp.send(null);
            };
        }
        console.log('end of script'); // this message is printed
    </script>
</body>

我不太了解HTTP请求,而且我假设可以使用AJAX加载我的网络浏览器可以完全访问的网址。
这个假设是不正确的?如果没有,那么我做错了什么?

1 个答案:

答案 0 :(得分:0)

重新排序代码

try

您必须发送请求,并且将自动触发回调。如果将该代码放在回调中,则永远不会实现对txt文件的请求