|
|
|
| Использую такую конструкцию для запроса к php файлу с последующим выводом в div:
<script type="text/javascript">
function loadXMLDoc(url)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
var xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","getuser.php?q="+url,false);
xmlhttp.send(null);
document.getElementById('engineer_div').innerHTML=xmlhttp.responseText;
}
</script>
|
Проблема заключается в том, что IE, при выполнении данного скрипта, говорит что "Object doesn`t support this property or method" (скриншот во вложении). В результате запроса к файлу getuser.php выводиться список фамилий пользователей в виде select.
Подскажите в чем проблема?
Заранее спасибо! | |
|
|
|
|
|
|
|
для: maxfade
(06.08.2010 в 08:46)
| |
<script type="text/javascript">
function loadXMLDoc(url)
{
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
var xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if(xmlhttp.readyState == 4) {
document.getElementById('engineer_div').innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","getuser.php?q="+url,false);
xmlhttp.send(null);
}
</script>
|
| |
|
|
|
|
|
|
|
для: maxfade
(06.08.2010 в 08:46)
| | Как с Вами скуШно...
Тысяча и одна ссылка в интернете есть, где популярно объяснено - как именно надо организовывать AJAX.
Но всякий раз находится тот, кто начинает САМ изобретать велосипед.
Сервер - он ДАЛЕКО.
Покуда запрос от браузера до сервера дойдёт и покуда сервер ответит и его ответ до браузера доберется - проходит какое-то время.
Какое именно - никто не знает. Ибо оно (это время) каждый раз - разное. Зависит от скорости соединения, от состояния сети, от состояния сервера...
В общем, после выполнения send () функции надо остановиться и подождать - покуда ответ придёт.
И предупредить браузер, что по получении ответа надо продолжить работу.
Для этого ВЕЗДЕ и ВСЕГДА (кроме как у Вас) нормальные люди так и делают - пишут для объекта вызов новой функции по событию onreadystatechange.
Но у Вас ведь всё не как у людей - Вы свой велосипед изобретаете...
Посмотрите работающий пример - http://codecenter.awardspace.com/selects.html | |
|
|
|
|
|
|
|
для: АЯ
(06.08.2010 в 09:16)
| | Большое спасибо. Исправлюсь :) | |
|
|
|