无法获得简单的ajax示例工作

时间:2011-08-08 18:15:31

标签: ajax file text

我正在尝试学习一些ajax。而我正试图让ajax异步读取文本文件。

继承我的代码:

<html>
<head> 
  <script type="text/javascript"> 
    var http = false;

    if(navigator.appName == "Microsoft Internet Explorer") {
      http = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
       http = new XMLHttpRequest();
    }

    function replace() {
      http.open("GET", "tester.txt", true);
      http.onreadystatechange=function() {
        if(http.readyState == 4) {
          document.getElementById('foo').innerHTML = http.responseText;
        }
      }
      http.send(null);
    }
  </script> 
</head> 
<body> 

<p><a href="javascript:replace()">Replace Text</a></p> 

<div id="foo" style="background: #CFEBFF; border: 2px solid #0090F4; padding: 4px"> 
  Hello, world!
</div> 

</body> 
</html> 

当我点击我放弃的链接时。它只显示一个空白。然而,我在同一目录(称为tester.txt)中的文本文件包含一些信息。请帮忙?谢谢。

1 个答案:

答案 0 :(得分:2)

除非你真的致力于学习如何做到这一点,否则我真的会建议jQuery。它使用a great library for AJAX requests为您处理所有奇怪的浏览器差异。要拨打你想要的电话,就像这样简单:

$.get('tester.txt').success(function (receivedData) {
  //do something with receivedData
});

如果你想要这么做,那么,祝你好运。您可以查看jQuery implements it如何找到一些线索,第7442到7980行。