План прост, javascript отправляет ajax GET запрос в файл 'localhost/test/php/test.php? A ='. Файл test.php просто повторяет ошибку $ _GET ['a']. Ответ Ajax затем используется как некоторый внутренний divHTML div.ajax call не работает propely в IE11 и chrome
Это workfs красиво и, как ожидается, на Firefox, но Chrome и IE11 он просто загружает страницу на последней итерации цикла:
HTML
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='Type=text/html; charset=utf-8'>
<meta charset="UTF-8">
<link rel="stylesheet" href="css/style.css" />
</head>
<body>
Text will appear here:
<div></div>
<script src="js/script.js"></script>
</body>
</html>
Javascript
window.onload = function() {
test.init();
};
var test = {
init: function() {
var ajax = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
for (var a = 0 ; a < 100 ; a++) {
ajax.open('GET','php/test.php?a='+a,false);
ajax.send();
ajax.onreadystatechange = function() {
if (this.status == 200 && this.readyState == 4) {
var div = document.getElementsByTagName('div');
div[0].innerHTML = ajax.responseText;
}
};
}
}
};
PHP
<?php
$a = $_GET['a'];
echo $a;
?>
Что мне нужно изменить, чтобы эта работа работала как с IE, так и с Chrome?
Я не думаю, что вы можете использовать один и тот же объект XMLHttpRequest для нескольких невыполненных запросов. Вы должны каждый раз создавать новый XHR через цикл. – Barmar
Я не видел, как в течение многих лет раздавался призыв AJAX. –
просто положил ajax var внутри цикла, но по-прежнему не имеет сделки, по сути, теперь он даже не отображает ответ ajax. @LG_PDX по какой-то причине мне просто не нравится jQuery :) – brunobliss