【发布时间】:2009-10-17 15:31:03
【问题描述】:
我正在尝试创建一个作品集网站,我的作品位于 XML 文件中。我想将 XML DOM 存储在一个 JavaScript 变量中,这样我就可以在每次用户单击加载新片段时访问它而无需调用服务器。
现在我有:
$(document).ready( function() {
xml = getXML();
});
function getXML() {
var data = $.ajax({
url: '_lib/xml/portfolio.xml',
dataType: 'xml',
success: function(data) { return data; }
});
return data;
}
在使用 Firebug 时,如果我在“成功:”之后在匿名函数中“console.log(data)”,它会记录一个“文档”。如果我在“$(document).ready...”中的“console.log(xml)”,它会记录一个 XMLHTTPRequest,我无法访问 XML 文档的 DOM。
我尝试过返回“data.responseXML”,但这并没有做任何事情。我还尝试在“成功:”之后调用非匿名函数并在那里记录 XML,它仍然显示为“文档”,这正是我所需要的。
当我返回 XML 时似乎出现了问题——它从“文档”变为“XMLHTTPRequest”。
任何帮助将不胜感激。谢谢!
【问题讨论】:
标签: javascript jquery xml