Не могу получить простой пример AJAX для работы - PullRequest
0 голосов
/ 08 августа 2011

Я пытаюсь выучить немного 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 Ответ

2 голосов
/ 09 августа 2011

Если вы действительно не хотите научиться делать это нелегко, я бы порекомендовал jQuery для этого.Он обрабатывает все эти странные различия браузеров с отличной библиотекой для запросов AJAX .Чтобы сделать звонок, который вы хотите, это будет просто:

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

Если вы хотите сделать это трудным путем, что ж, удачи вам.Вы можете посмотреть, как jQuery реализует его для некоторых подсказок, строки с 7442 по 7980.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...