Показать сообщение отдельно
  #1 (permalink)  
Старый 23.03.2011, 11:29
Кандидат Javascript-наук
Отправить личное сообщение для Jurasmi Посмотреть профиль Найти все сообщения от Jurasmi
 
Регистрация: 25.11.2008
Сообщений: 115

Через argument.callee не получается переписать функцию.
var myObj = {
	doAction: function(){
		this.makeHTMLRequest(query, doSmth);
	},

	makeXMLRequest: function(query, callback){
		var   that = this,
			callee = arguments.callee;
		$.ajax({ 
			success: function(){
				//override original method "makeXMLRequest"
				callee = function(query, callback){		//не работает, а с "that.makeXMLRequest" работает
					callback();
				};
			}
		});
	}
}


Почему нельзя переписать метод "makeXMLRequest" через "callee", а через "that.makeXMLRequest" - можно?

А вообще задача - не вызывать каждый раз асинхронный запрос, а получить один раз данные, а при следующем вызове брать уже полученные и подставлять их.
Ответить с цитированием