Гость
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / AJAX и 2 запроса ... / 10 сообщений из 10, страница 1 из 1
13.02.2007, 16:39
    #34327737
bdfy1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
Задача следующая: нужно подгрузить на страницу 2 "куска" информации

Вызывается так:
....
<div id="p1"></div>
<div id="p2"></div>
...

<script language="Javascript">
makeRequest( 'p1', 'ссылка1', 'параметры1');
setTimeout("makeRequest( 'p1', 'ссылка2', 'параметры2", 9000 );
</script>
где makeRequest ( см. прилагаемый файл - что то стандартное ) ....
В таком случае все работает, т е подгружается сначала 1-ая ссылка, после через 9000 времени вторая. Но хочется чтобы сразу после подгрузки 1 ссылки загружалась 2-ая ссылка ...
Вот так не работает ( т е подгружается 1 ссылка и все останавливается ) ...
<script language="Javascript">
makeRequest( 'p1', 'ссылка1', 'параметры1');
makeRequest( 'p1', 'ссылка2', 'параметры2');
</script>
С чем это связано ?
...
Рейтинг: 0 / 0
13.02.2007, 16:41
    #34327747
bdfy1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
т е соотв ...
makeRequest( 'p1', 'ссылка1', 'параметры1');
makeRequest( 'p2', 'ссылка2', 'параметры2');
...
Рейтинг: 0 / 0
13.02.2007, 19:05
    #34328293
muk07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
Я это пробовал - не получается.
Грузите всё одним request.
...
Рейтинг: 0 / 0
14.02.2007, 07:00
    #34328876
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
bdfy1
С чем это связано ?
запроса 2, а XMLHttpRequest видимо один
думаю при такой структуре не нужно все объекты весить на
Код: plaintext
var http_request = false;
...
Рейтинг: 0 / 0
14.02.2007, 08:37
    #34328984
muk07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
>LINUXER
2 разных XMLHttpRequest мне не помогли.

У меня есть неск догадок на эту тему.
Но это всего лишь догадки.
Хотелось прочитать где то подробно о реализации XMLHttpRequest.
Не подскажете?
...
Рейтинг: 0 / 0
14.02.2007, 11:58
    #34329671
for93t
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
А можно нормальный архив приложить?
...
Рейтинг: 0 / 0
14.02.2007, 13:04
    #34330023
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
for93tА можно нормальный архив приложить?
переименуй в txt будет ногмальный =)
...
Рейтинг: 0 / 0
14.02.2007, 13:13
    #34330070
LINUXER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
muk07>LINUXER
2 разных XMLHttpRequest мне не помогли.

У меня есть неск догадок на эту тему.
Но это всего лишь догадки.
Хотелось прочитать где то подробно о реализации XMLHttpRequest.
Не подскажете?
wiki - там внизу ссылки на w3 и msdn
Ajax в действии по-русски ещё не читал
...
Рейтинг: 0 / 0
14.02.2007, 13:26
    #34330134
bdfy1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
Короче говоря не стал заморачиваться скачал вот эту библиотеку и все пркрасно получилось
http://anakin.us/blog/advancedajax-20-rc2/ и все нормальнно заработало - видимо решение как это работает - там же ....
...
Рейтинг: 0 / 0
14.02.2007, 15:11
    #34330666
for93t
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
AJAX и 2 запроса ...
Мое решение, тестировал на IE7, FF1.5, Opera 9 - полет нормальный
Попробуй:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Тест параллельного выполнения AJAX-запросов</title>

<script language="javascript" type="text/javascript">

Function.prototype.createDelegate = function(obj, args, appendArgs){
    
	var method = this;
    
	return function() {
    
	    var callArgs = args || arguments;
    
	    if (appendArgs === true) {
    
	        callArgs = Array.prototype.slice.call(arguments,  0 );
    
	        callArgs = callArgs.concat(args);
			
        } else if (typeof appendArgs == 'number') {
            
			callArgs = Array.prototype.slice.call(arguments,  0 );
            
			var applyArgs = [appendArgs,  0 ].concat(args);
            
			Array.prototype.splice.apply(callArgs, applyArgs);
       
	    }
        
		return method.apply(obj || window, callArgs);
		
    };
	
};

var MakeRequest = function () {
	
	this.transport = (function () {
	
		try {
					
			if (window.ActiveXObject) {
			
				var AXOs = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP'];
				
				for (var i =  0 ; i < AXOs.length; i++) {
				
					try { return ActiveXObject(AXOs[i]) } catch (e) {}
				
				}
			
			}
			
			if (window.XMLHttpRequest) return new XMLHttpRequest();
		
		} catch (e) {
		
			alert('ОШИБКА! Невозможно создать объект HTTPRequest.');
			
			return null;
		
		}
	
	} ());
	
	this.place = arguments[ 0 ] ? document.getElementById(arguments[ 0 ]) : null;
	
	document.getElementById('wait').innerHTML = 'Waiting ... ';
	
	this.ResponseHandler = function () {
		
		if ( 4  == this.transport.readyState) {
		
			if (this.place) {		
				
				if ( 200  == this.transport.status) {
					
					this.place.innerHTML = this.transport.responseText;
				
				} else alert('ОШИБКА! Неверный ответ сервера.');
			
			} else alert('ОШИБКА! Отсутствует контейнер для запрошенных данных.');
			
			document.getElementById('wait').innerHTML = '';
			
			this.transport.onreadystatechange = null;
		
		}	
	
	}
	
	try {this.transport.onreadystatechange = this.ResponseHandler.createDelegate(this); } catch (e) {}
	
    var url = arguments[ 1 ] + arguments[ 2 ];
	
	this.transport.open('GET', url, true);
	
    this.transport.send(null);

};

</script>

</head>

<body onload="func();">
<div id="wait"></div>
<div id="div1"></div>
<div id="div2"></div>

</body>

<script language="javascript" type="text/javascript">

function func() {
	var a = new MakeRequest('div1', 'server.php', '?query=123');
	var b = new MakeRequest('div2', 'server.php', '?query=456');
};

</script>

</html>
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / AJAX и 2 запроса ... / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]