Столкнулся с проблемой после того, как стал тестить скрипт на Internet Explorer. Причем на Opera и Firefox все работает отлично!
IE6 и IE7 не выдают ошибок, просто неправильно действуют.
Вот исходник js-файла, который инклюдится:
var xmlHttp= false;
try {
xmlHttp = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
xmlHttp = false;
}
}
}
if (!xmlHttp)
alert("Ошибка создания XMLHttpRequest!");
function process(ident, prod)
{
if (xmlHttp)
{
try
{
xmlHttp.open("GET", "session.php?sessid="+ident+"&prod="+prod, true);
xmlHttp.onreadystatechange = handleRequestStateChange;
xmlHttp.send(null);
}
catch (e)
{
alert("Не могу соединиться с сервером:\n" + e.toString());
}
}
}
function handleRequestStateChange()
{
myDiv = document.getElementById("checkCount");
if (xmlHttp.readyState == 4)
{
if (xmlHttp.status == 200)
{
try
{
response = xmlHttp.responseText;
myDiv.innerHTML = response;
}
catch(e)
{
alert("Ошибка чтения ответа: " + e.toString());
}
}
else
{
alert("Ошибка получения данных:\n" +
xmlHttp.statusText);
}
}
}
Ссылка на функцию process выполняется по типу
<input type="checkbox" name="chk11" onChange='JavaScript:process("b4e6bd62d12a6c29a2ef2dae2c3d8ecf","27");' />
Это первое, что я написал на Ajax. Помогите пожалуйста разобраться
