我对 XML 很陌生,但即便如此,由于 w3school 的网站从文件中加载信息,我还是设法获得了一个工作脚本,这里是:http ://www.w3schools.com/xml/xml_dom.asp 。不幸的是,我遇到了一个重复站点的小问题,即使我进行了研究,我也没有找到答案。
除了 elementId 名称之外,该代码在我的第二个站点中是相同的。
我正在使用 wamp 服务器,我的 XML 文件“PortfolioInfo.xml”与我的 index.html 位于同一目录中,我的 xml 中的标签内有一个标签。我想将 XML 中的标记中的信息插入到 HTML 标记中。
我的 Javascript 是:
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","PortfolioInfo.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
document.getElementById("contactName").innerHTML=xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue;
如果我注释掉 document.getElementById 行,那么我的 Javascript 代码的其余部分不会中断,如果中断时没有注释掉。我尝试将它放在 HTML 文件本身的 body 标记末尾。
完整的 HTML 在这里:
<!DOCTYPE html>
<html>
<head>
<title>Portfolio: Darrell James</title>
<link rel="stylesheet" type="text/css" href="style.css" />
<link href='http://fonts.googleapis.com/css?family=Aldrich' rel='stylesheet' type='text/css'>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
</head>
<body>
<div id="home">
</div>
<div id="about">
<div id="aboutHome"><span class="arrow"><<</span></div>
<div id="aboutSlide">
<div id="aboutText">
about
</div>
</div>
</div>
<div id="gallery">
<div id="galleryHome"><span class="arrow"><<</span></div>
<div id="gallerySlide">
<div id="galleryText">
gallery
</div>
</div>
</div>
<div id="contact">
<div id="contactHome"><span class="arrow"><<</span></div>
<div class="nobr" id="contactContent">
<span id="contactName">
</span>
</div>
<div id="contactSlide">
<div id="contactText">
contact
</div>
</div>
</div>
<script src="script.js"></script>
<script>
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","PortfolioInfo.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
document.getElementById("contactName").innerHTML=xmlDoc.getElementsByTagName("name")[0].childNodes[0].nodeValue;
</script>
</body>
我没有必要使用 XML,但我会很感激任何帮助。