Автор Тема: AJAX - не подгружается ответ  (Прочитано 1168 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн max38934

  • Коллежский регистратор
  • *
  • Сообщений: 7
  • Репутация: 0
AJAX - не подгружается ответ
« : јРЩ 18, 2009, 10:17:41 am »
Добрый день! Все время работал под Mozilla, решил запустить под IE - не хочет работать! Суть проблемы такова:
есть на страничке динамический select_1, результат которого должен подгружаться во второй select_2, ну а со второго - в третий. В Mozilla все работает отлично. Пробую в IE - после изменения в первом select_1 - второй становится активным, но пустым.
Вот код:
function makeRequest_5(url_5)
{
// создание объекта для разных браузеров
var http_request_5 = false;
if (window.XMLHttpRequest)
{
http_request_5 = new XMLHttpRequest();
if (http_request_5.overrideMimeType)
{
http_request_5.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject)
{
try
{
http_request_5 = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
http_request_5 = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}

  // если объект не создан
  if (!http_request_5)
{
alert('Не вышло  Невозможно создать экземпляр класса XMLHTTP '); // выдаём сообщение.
return false;
}
var id_5 = document.getElementById("select_5").value; //значение выбранное в первом селекте(subject)
if (id_5 != 0) // Если выбран НЕ первый пункт
{
//alert(id_3);
http_request_5.onreadystatechange = function() { alertContents_5(http_request_5); }; // функция-обработчик
http_request_5.open('GET', url_5+"?id_5="+id_5, true); //сам запрос в виде ("тип_запроса", "адрес", "асинхронность")
http_request_5.send(null); //отправка дополнительных параметров
}
else
{
document.getElementById("select_6").disabled = true; // если выбрали первый пункт закрываем селект
document.getElementById("select_7").disabled = true;
//document.getElementById("select_8").disabled = true;
//document.getElementById("select_8").style = "none";
select_8.style.display="none";
}
}
function alertContents_5(http_request_5)
{
if (http_request_5.readyState == 4) // если состояние "выполнено"
{
if (http_request_5.status == 0 || http_request_5.status == 200) // если не возвращено никакой ошибки
{
var select_6 = document.getElementById("select_6"); // select с id="mySelect"

select_6.disabled = false; // делаем его возможным к выбору
select_6.innerHTML = http_request_5.responseText;
}
else
{
return false;
}
}
}
//___________________________________tema__________________________________
function makeRequest_6(url_6)
{
// создание объекта для разных браузеров
var http_request_6 = false;
if (window.XMLHttpRequest)
{
http_request_6 = new XMLHttpRequest();
if (http_request_6.overrideMimeType)
{
http_request_6.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject)
{
try
{
http_request_6 = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
http_request_6 = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}

  // если объект не создан
  if (!http_request_6)
{
alert('Не вышло  Невозможно создать экземпляр класса XMLHTTP '); // выдаём сообщение.
return false;
}
var id_6 = document.getElementById("select_6").value; //значение выбранное в первом селекте(subject)
var id_5 = document.getElementById("select_5").value;
if (id_6 != 0) // Если выбран НЕ первый пункт
{
//alert(id_5);
http_request_6.onreadystatechange = function() { alertContents_6(http_request_6); }; // функция-обработчик
http_request_6.open('GET', url_6+"?id_6="+id_6+"&id_5="+id_5, true); //сам запрос в виде ("тип_запроса", "адрес", "асинхронность")
http_request_6.send(null); //отправка дополнительных параметров
}
else
{
document.getElementById("select_7").disabled = true; // если выбрали первый пункт закрываем селект
}
}
function alertContents_6(http_request_6)
{
if (http_request_6.readyState == 4) // если состояние "выполнено"
{
if (http_request_6.status == 0 || http_request_6.status == 200) // если не возвращено никакой ошибки
{
var select_7 = document.getElementById("select_7"); // select с id="mySelect"

select_7.disabled = false; // делаем его возможным к выбору
select_7.innerHTML = http_request_6.responseText;
}
else
{
return false;
}
}
}
//__________________________________________________________________
//___________________________________obrabortka voprosov__________________________________
function makeRequest_7(url_7)
{
// создание объекта для разных браузеров
var http_request_7 = false;
if (window.XMLHttpRequest)
{
http_request_7 = new XMLHttpRequest();
if (http_request_7.overrideMimeType)
{
http_request_7.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject)
{
try
{
http_request_7 = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
http_request_7 = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {}
}
}
  // если объект не создан
  if (!http_request_7)
{
alert('Не вышло  Невозможно создать экземпляр класса XMLHTTP '); // выдаём сообщение.
return false;
}
var id_7 = document.getElementById("select_7").value; //значение выбранное в первом селекте(subject)
//alert(id_7);
//if (id_7 != 0) // Если выбран НЕ первый пункт
//{
//alert("5");
//alert(id_7);
http_request_7.onreadystatechange = function() { alertContents_7(http_request_7); }; // функция-обработчик
http_request_7.open('GET', url_7+"?id_7="+id_7, true); //сам запрос в виде ("тип_запроса", "адрес", "асинхронность")
http_request_7.send(null); //отправка дополнительных параметров
//}
//else
//{
//document.getElementById("select_8").disabled = true; // если выбрали первый пункт закрываем селект
//}
}
function alertContents_7(http_request_7)
{
if (http_request_7.readyState == 4) // если состояние "выполнено"
{
if (http_request_7.status == 0 || http_request_7.status == 200) // если не возвращено никакой ошибки
{
var select_8 = document.getElementById("select_8"); // select с id="mySelect"

select_8.style.display="block";
select_8.disabled = false; // делаем его возможным к выбору
select_8.innerHTML = http_request_7.responseText;
}
else
{
return false;
}
}
}

Оффлайн dEEp

  • Глобальный модератор
  • Тайный советник
  • *****
  • Сообщений: 2021
  • Репутация: 29
  • Пол: Мужской
Подпись - есть нечто иное, как изъяснение общей сути человека, выраженное кем-то более великим, чем тот, кто написал его в каком-либо месте в любой форме изложения....