使用JavaScript/AJAX连接两个XML文件
我的任务是将XML文件分成两部分,以便于编辑 但是所有现有的代码库都被设计成将其作为单个文件处理 作为中间立场(由于时间有限),我决定拆分文件,但只需使用以下代码将拆分的文件连接起来使用JavaScript/AJAX连接两个XML文件,javascript,xml,ajax,dom,Javascript,Xml,Ajax,Dom,我的任务是将XML文件分成两部分,以便于编辑 但是所有现有的代码库都被设计成将其作为单个文件处理 作为中间立场(由于时间有限),我决定拆分文件,但只需使用以下代码将拆分的文件连接起来 var xmlDoc; xmlhttp.open("GET","distributome-relations.xml",false); xmlhttp.send(); xmlDoc = xmlhttp.responseXML; xmlhttp=createAjaxReques
var xmlDoc;
xmlhttp.open("GET","distributome-relations.xml",false);
xmlhttp.send();
xmlDoc = xmlhttp.responseXML;
xmlhttp=createAjaxRequest();
xmlhttp.open("GET","distributome-references.xml",false);
xmlhttp.send();
xmlDoc = xmlDoc+xmlhttp.responseXML;
try{
DistributomeXML_Objects=xmlDoc.documentElement.childNodes;
}catch(error){
DistributomeXML_Objects=xmlDoc.childNodes;
}
当原始代码
xmlhttp.open("GET","Distributome.xml",false);
xmlhttp.send();
if (!xmlhttp.responseXML.documentElement && xmlhttp.responseStream)
xmlhttp.responseXML.load(xmlhttp.responseStream);
xmlDoc = xmlhttp.responseXML;
try{
DistributomeXML_Objects=xmlDoc.documentElement.childNodes;
}catch(error){
DistributomeXML_Objects=xmlDoc.childNodes;
}
很好用
我不知道该怎么做
我只是简单地分割了文件
进入
及
最后两个文件的格式将不正确,因为只有两个文件的简单连接才是有效的XML文档
我怀疑这是由于使用了responseXML方法,我应该使用另一种方法
有没有更好的办法。我欢迎任何建议,当然也欢迎对我最初问题的回答
谢谢如果您解释一下
似乎不起作用的内容
会有所帮助,但是从快速查看您的代码中,我可以看出您正在尝试使用+
连接两个对象。这一行:
xmlDoc = xmlDoc + xmlhttp.responseXML;
XHR的responseXML
属性不会像您期望的那样返回字符串(顺便说一句,将两个这样的XML文件连接起来很可能会导致格式不正确的XML)。第二个示例正确地处理了它的本质—DOM文档对象
您可以阅读有关responseXML
的更多信息。请注意有关内容类型
的说明,以及您可能需要如何在XHR上使用OverrideMetype()
,以使其相信如果服务器未正确设置标头,它会从服务器收到XML
要以支持XML的方式进行连接,需要从第二个文档()中获取根节点,使用将其导入到第一个文档中,然后将其作为子节点附加到您希望它使用的位置如果您解释一下
似乎不起作用的内容
会有所帮助,但通过快速查看您的代码,我可以看出您正在尝试使用+
连接两个对象。这一行:
xmlDoc = xmlDoc + xmlhttp.responseXML;
XHR的responseXML
属性不会像您期望的那样返回字符串(顺便说一句,将两个这样的XML文件连接起来很可能会导致格式不正确的XML)。第二个示例正确地处理了它的本质—DOM文档对象
您可以阅读有关responseXML
的更多信息。请注意有关内容类型
的说明,以及您可能需要如何在XHR上使用OverrideMetype()
,以使其相信如果服务器未正确设置标头,它会从服务器收到XML
要以支持XML的方式进行连接,您需要从第二个文档()中获取根节点,使用将其导入到第一个文档中,然后使用将其作为子节点附加到您希望的位置。将文件扫描为文本、连接并将字符串视为XML对象是否有效?基本上,xmlDoc不是一个有效的XML对象——根据您的解释,这一点现在看起来很明显。我会查看文档,希望能把事情弄清楚。好吧,你也可以这样做。只需确保将第二个文档添加到第一个文档的正确位置即可。如果它携带
我明白了。将文件扫描为文本、连接并将字符串视为XML对象是否有效?基本上,xmlDoc不是一个有效的XML对象——根据您的解释,这一点现在看起来很明显。我会查看文档,希望能把事情弄清楚。好吧,你也可以这样做。只需确保将第二个文档添加到第一个文档的正确位置即可。如果它携带