AJAX: Ограничения IE и XMLHttpRequest???

smartello

Новичок
AJAX: Ограничения IE и XMLHttpRequest???

Суть проблемы такова:

PHP:
function createRequestObject()
{
	var ro;

	if (window.XMLHttpRequest)
		ro = new XMLHttpRequest();
	else
	{
		ro = new ActiveXObject('Msxml2.XMLHTTP');
		if(!ro) 
			ro = new ActiveXObject('Microsoft.XMLHTTP');
	}

	return ro;
}

var http;

function sndReq(req, handleResponse)
{
	http = createRequestObject();
	http.open("get", req);
	http.onreadystatechange = handleResponse;
	http.send(null);
}
Так вот когда в строке http.open("get", req); в интернет эксплорере приходит строка на кириллице (да и на латинице вроде тоже самое) длиной ~350 символов и больше, то... ничего не происходит. Абсолютно ничего, работа останавливается. Опера и Фаирфокс прекрасно работают с длинными текстами. Но у меня задача написать рабочий код под IE6. Эта цель первична, а поддержка других браузеров даже и не обязательна, а у меня работает везди ероме осла :) Выручайте! Заранее благодарен
 

vd

Новичок
Вы можете попробовать передать данные не через GET а через POST

т.е.
Код:
    http = createRequestObject(); 
    http.open("POST", req); 
    http.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    http.send(postData);
    http.onreadystatechange = handleResponse;
где postData - строка формата "var=value"

При этом можно одновременно передавать данные через GET, в адресе...
 

smartello

Новичок
а если я передаю до 4-х параметров, тогда как быть? Как построить строку?
 

vd

Новичок
Я точно не уверен, скорее всего через "&" - нужно попробовать.

в крайнем случае можно передать как строку где значения переменных перечислены через запятую, а потом эту строку разбить...
 

smartello

Новичок
ок, завтра на работу приду и попробую. О результатах обещаю отписать

-~{}~ 04.08.06 10:30:

Да, спасибо огромное, параметры передаются в том же формате, что и при GET запросе.

Уже после того как последовал вашему совету увидел на полочке на работе книжку К.Дари "Разработка динамических веб-приложений" Там так и написано, что GET использовать следует при малых обёмах данных или для отладки... Ну что ж, хорошо, что если уж я не вижу книг которые есть, то всё равно существует этот форум и люди, готовые помочь ;)

ПС: ещё раз спасибо!
 
Сверху