gpt4 book ai didi

javascript - 在成功调用之外使用通过 Ajax 加载的 XML 文件内容

转载 作者:行者123 更新时间:2023-12-02 18:41:48 24 4
gpt4 key购买 nike

我有这个代码:

$.ajax({
url: "lang_files/" + window.localStorage.language + ".xml",
dataType: 'xml',
success: function(data) {
var xml_node = $("resources", data);
$("#index_intro").text(xml_node.find('string[name="index_intro"]').text());
},
error: function(data) {
console.log("Error loading XML data");
}
});

它工作正常,.text() 使用我的 XML 文件中的信息正确设置,我现在希望能够在我的应用程序中使用 XML 文件,而不仅仅是在成功调用中,所以我这样做了:

var xml_node;

$.ajax({
url: "lang_files/" + window.localStorage.language + ".xml",
dataType: 'xml',
success: function(data) {
xml_node = $("resources", data);
},
error: function(data) {
console.log("Error loading XML data");
}
});

$("#index_intro").text(xml_node.find('string[name="index_intro"]').text());

但这不起作用,我想了解为什么。

最佳答案

这是因为 ajax 是异步的,所以当你调用 xml_node 时,它​​仍然是未定义的。试试这个:

$.ajax({
url: "lang_files/" + window.localStorage.language + ".xml",
dataType: 'xml',
success: function(data) {
setIndexIntro($("resources", data));
},
error: function(data) {
console.log("Error loading XML data");
}
});

function setIndexIntro(xml_node)
{
$("#index_intro").text(xml_node.find('string[name="index_intro"]').text());
}

关于javascript - 在成功调用之外使用通过 Ajax 加载的 XML 文件内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16772864/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com