У меня проблема. Я пытался решить проблему того, как избежать использования глобальных переменных. Вместо этого я решил использовать объект с функциями и написал соответствующий скрипт. Однако сценарий не будет работать должным образом:
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;
). Первый работает, как и ожидалось. Однако второе, вне этой функции, возвращает значение «ноль». Почему?
Спасибо, Эллиот Бонневиль
P.S. Я застрял на казалось бы простом вопросе о передаче переменных между функциями в течение недели.