0
我試圖使XML文件中的URL顯示在HTML頁面上,作爲可點擊的超鏈接而不是僅顯示爲文本的URL。使用XSL在HTML頁面上顯示XML中的超鏈接
這怎麼辦?我敢肯定,我做了什麼已經不遠了......
下面的代碼是什麼樣子:
XML
<linkedin>
<discussion>
<topic>This is the discussion name</topic>
<content>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce ligula mi, convallis eget iaculis id, euismod non arcu. Morbi porta.</content>
<url>http://www.google.com</url>
</discussion>
</linkedin>
XSL
<xsl:for-each select="linkedin/discussion">
<h3><xsl:value-of select="topic"/></h3>
<p><xsl:value-of select="content"/></p>
<p><a><xsl:attribute name="href"><xsl:value-of select="url"/></xsl:attribute><xsl:value-of select="url"/></a></p>
</xsl:for-each>
我正在使用JavaScript中的HTML來提取什麼是XML文件
<script type="text/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","linkedin.xml",false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByTagName("discussion");
for (i=0;i<x.length;i++)
{
document.write("<p><strong>");
document.write(x[i].getElementsByTagName("topic")[0].childNodes[0].nodeValue);
document.write("</strong></p><p>");
document.write(x[i].getElementsByTagName("content")[0].childNodes[0].nodeValue);
document.write("</p><p>");
document.write(x[i].getElementsByTagName("url")[0].childNodes[0].nodeValue);
}
document.write("</p>");
</script>
在這裏是它是如何看... URL是文本,而不是一個超鏈接:
您是否在任何地方使用附加的XSL?從當前的解決方案切換到XSL,還是隻需要使當前的解決方案正確工作,您是否需要幫助? – bububaba
@bububaba我只想讓當前的解決方案正常工作。你能看到XML,XSL或HTML中的任何錯誤嗎?謝謝 – Tim
首先,我找不到您使用粘貼的XSL的位置。除此之外,你缺少的東西可能只是'document.write'調用中'href'屬性的''標籤。 – bububaba