Javascript 使用XSL在HTML页面上显示来自XML的超链接

Javascript 使用XSL在HTML页面上显示来自XML的超链接,javascript,html,xml,Javascript,Html,Xml,我试图使XML文件中的url在HTML页面上显示为可单击的超链接,而不仅仅是显示为文本的url 如何做到这一点?我很确定我所做的一切已经不远了 下面是代码的样子: XML <linkedin> <discussion> <topic>This is the discussion name</topic> <content>Lorem ipsum dolor sit amet, consectetur adipiscing

我试图使XML文件中的url在HTML页面上显示为可单击的超链接,而不仅仅是显示为文本的url

如何做到这一点?我很确定我所做的一切已经不远了

下面是代码的样子:

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: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>

这是讨论名称
Lorem ipsum dolor sit amet,是一位杰出的献身者。我的舌苔,我的舌苔,我的舌苔,我的舌苔。莫尔比门。
http://www.google.com
XSL

<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: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>

我在HTML中使用JavaScript来提取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>

if(window.XMLHttpRequest)
{//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}
其他的
{//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
open(“GET”,“linkedin.xml”,false);
xmlhttp.send();
xmlDoc=xmlhttp.responseXML;
var x=xmlDoc.getElementsByTagName(“讨论”);

对于(i=0;i已解决。将HTML中的JavaScript设置为:

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("</p><p>");
document.write("<p><a href='");
document.write(x[i].getElementsByTagName("url")[0].childNodes[0].nodeValue);
}
document.write("'>Click here to go through to the LinkedIn group</a></p>");
document.write(“”);
document.write(x[i].getElementsByTagName(“主题”)[0].childNodes[0].nodeValue);
文件。写(“

”); document.write(x[i].getElementsByTagName(“内容”)[0].childNodes[0].nodeValue); 文件。写(“

”); 文件。写(“

”); 文件。写(“

”);
您是否在任何地方使用附带的XSL?您是否需要帮助从当前解决方案切换到XSL,或者只是让当前解决方案正常工作?@bububaba我只希望当前解决方案正常工作。您能看到XML、XSL或HTML中有什么错误吗?谢谢首先我找不到您所在的位置使用粘贴的XSL。除此之外,您缺少的可能只是
文档中带有
href
属性的
标记。编写
调用。