У меня проблема. Я пытался решить проблему того, как избежать использования глобальных переменных. Я решил использовать объект с функциями на нем вместо этого, и написал сценарий соответственно. Тем не менее, сценарий не будет работать, как ожидалось:Доступ к переменной, значение которой задано в функции AJAX
GetXML: function() {
$.ajax({
type: "GET",
url: "questions.xml",
dataType: "xml",
success: function(xml) {
this.xml=xml;
$(window).trigger("canUseXML");
var docLength = $(xml).find('Question').length + 1;
alert("this really is an '" + this.xml + "' and the actual doclength is: " + docLength)//This is the first alert I mention.
} //close success
});//close AJAX
alert("yes! this is still a: " +this.xml) //This is the second alert I mention.
},
Если все это бежало, как и ожидалось, оба предупреждения приведет к «объекта XMLDocument» (переменная объявлена в другом месте в этой строке: this.xml = null;
). Первый работает так, как ожидалось. Однако второй, вне этой функции, возвращает значение «null». Зачем?
Спасибо, Эллиот Bonneville
P.S. Я застрял на кажущемся простым вопросом о передаче переменных между функциями в течение недели.
Просьба отметить это любым языком, на котором вы используете –
Какой язык? Вы должны поместить его в теги, чтобы они поняли. – Dima
О, ну, извините. –