我遇到了問題。我一直在試圖解決如何避免使用全局變量的問題。我決定改用一個帶有功能的對象,並相應地編寫一個腳本。然而,由於預期該腳本將不會運行:訪問在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」。爲什麼?
Thanks,Elliot Bonneville
P.S.我一直被困在函數間傳遞變量一週的看似簡單的問題上。
請用任何您正在使用的語言對本標記進行標記 – 2010-11-18 23:02:59
語言是什麼?你應該把它放在標籤中來說明。 – Dima 2010-11-18 23:03:50
噢,對不起。 – 2010-11-18 23:11:24