Проблема с повторным вызовом функции

Aly

Новичок
Проблема с повторным вызовом функции

День добрый.
Вот возникла следующая проблемка.. снизу приведёна вызываемая функция ch_refresh, вней вызывается функция umsg_text() (помечена многими тире), при первом вызове функции ch_refresh(), всё происходит как и задумывалось, а вот при повторном вызове ch_refresh() через setTimeout(), на вызове функции umsg_text() вылетает еррор(Object doesn't support this property or method), при этом сама функция естественно не вызывается(проверял через alert()). Есть предположения?
заранее благодарен.

PHP:
function ch_refresh(){
	var curDateTime = new Date();
	var url = 'index.php';
	http[curDateTime] = createRequestObject();
	http[curDateTime].open("GET", url, true);
	http[curDateTime].onreadystatechange = function(){
		if (http[curDateTime].readyState == 4){
			if(http[curDateTime].status == 200){
				if(http[curDateTime].responseText == 'refresh'){
					var refr = 'Страничка обновилась!';
					
                                        umsg_text(refr);//------------
					return;
				}
			}
			else if (http[curDateTime].status == 404){
				umsg_text('Нет соединеия с сервером!');
			}
			else{
				umsg_text('Проблемы с соединеием к серверу!');
			}
		}				
	}
	http[curDateTime].send(null);
	setTimeout('ch_refresh()',9000);	
}
-~{}~ 05.03.07 15:19:

Сделал один экпериментик.. и моё предположение похоже подтверждается.. я сделал так чтоб после первого вызова вызывалась аналогичная функция(umsg_text2()) но с другим именем.. и всё прошло удачно. Я предпологаю что где то эти вызовы функций перекрещиваются, но тогда вопрос почему?
 

Sender

Новичок
Aly
с чего ты взял что ошибка именно на umsg_text вылазит?
поставь перед ней alert('a') и после нее alert('b'); и попробуй еще
раз.

если не будет связки a-b значит в ней, иначе не в ней :)
 

Aly

Новичок
Sender, я даже больше скажу, я выставил alert('1') до вызова функции,alert('2') вначале вызываемой функции и alert('3') после вызываемой функции. первий раз идёт связка 1-2-3, во 2ой 1-еррор, собсна я вроде отметил что проверял алертами, извиняюсь если непонятно это отметил.
 

Sender

Новичок
Aly
возможно не там ставил alert?
сделай сначала функцию пустой, если ошибка будет наблюдаться - убери передачу параметра.

если ошибка будет наблюдаться - сам понимаешь, функция тут не при чем...

-~{}~ 05.03.07 18:53:

Aly
еще лучше воспользуйся Mozilla, он четко указывает в своей Javascript Console строку ошибки...
 

BRat

o_0
на вызове функции umsg_text() вылетает еррор(Object doesn't support this property or method)

перевести саму ошибку ты ведь можешь? берешь Мозиллу+Файрбаг, или Оперу, смотришь в какой строке ошибка и выясняешь почему. Это намного быстрее чем трактаты на форум писать, и мозгам полезно
 

Aly

Новичок
Сделал как советовал Sender. И всё стало на свои места, я бонально переписивал функцию.. (чёрт 2ой раз на такое нарываюсь). Очень благодарен, наверн еще бы долго пытался решить проблему.

P.S. firefox ошибки не показывал ;)
 
Сверху