Я использую Ajax через ICallbackEventHandler в ASP.NET, на странице происходит то, что рекурсивный вызов возвращается к серверу каждые 1000 мс с использованием ajax. Вот код, который выполняет обратный вызов ajax каждую 1 секунду:
setTimeout("MessageServerRequest(tempLastDate);", 1000);
function MessageServerRequest(param)
{
WebForm_DoCallback('ChannelControl1','getmessage~' + param,MessageServerResponse,null,null,true);
}
function MessageServerResponse(param, context)
{
if (param.length > 0) {
var splitParam = param.split("~");
var id = splitParam[0];
var messagesHtml = splitParam[1];
var lastDate = splitParam[2];
tempLastDate = lastDate;
$('#' + id).prepend(messagesHtml);
}
setTimeout("MessageServerRequest(tempLastDate);", 1000);
}
Что он делает, так это то, что он получает все последние сообщения из базы данных и возвращает новые сообщения обратно клиенту.
Теперь, когда я удалил рекурсивный вызов, IE не аварийно завершил работу, но дело в том, что когда я использую Mozilla, Safari или Opera, все работает нормально с использованием рекурсивного вызова.
Я не понимаю, почему он работает для всех других браузеров, а не IE 8/9
Информация о системе
Windows 7 Ultimate
32 бит
Визуальная студия 2006
IE9, даже не работал с IE8, но я обновился до IE9
Может кто-нибудь помочь мне с этим вопросом, пожалуйста, я был бы признателен?
Спасибо