我正在尝试在通过AJAX提取的HTML页面上显示我的XML和XSL。我已经将XML链接到了HTML页面,但无论我做什么,XSL似乎都不会显示出来。
这是我的XML代码:
<tv_guide>
<channel>
<channel_id> 1 </channel_id>
<program> <!--beginning of channel1-->
<title>News</title>
<time>HELP</time>
<duration_id>1</duration_id>
<description>ABCD</description>
</program>
</channel>
这是我的XSL代码:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method='html'/>
<xsl:template match="/">
<xsl:for-each select="program">
<td>
<xsl:attribute name="id">
<xsl:value-of select="duration_id"/> </xsl:attribute>
<xsl:attribute name="colspan">
<xsl:value-of select="duration"/>
</xsl:attribute>
<xsl:value-of select="name"/> </td>
</xsl:for-each >
</tr>
</xsl:template>
</xsl:stylesheet>
这是我的AJAX代码:
function loadXMLDocWed()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState===4 && xmlhttp.status===200)
{
document.getElementById("tabs-3").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","URL",true);
xmlhttp.send();
}
任何您认为可能会有所帮助的建议都会受到高度赞赏,因为我已经暂时坚持了一段时间。
答案 0 :(得分:0)
xslt脚本存在问题。 你试图为每个人做这样的事情
<xsl:for-each select="program">
在xslt中如果你想获得一个嵌套元素,程序在你的情况下你有两个选项。
递归&#34;搜索&#34;对于这样的元素。
<xsl:for-each select="//program">
像这样的完整路径。
<xsl:for-each select="tv_guide/channel/program">
您可以在xslt找到更多参考资料。
三木