对于我的生活,我无法得到这个来生成html表格行。我得到的只是:
<form class="paramForm" action="/api/QueryExec" method="post" name="ExecQuery">
<table></table>
<a id="paramSubmit" class="btn" href="#">Go</a>
</form>
这是我的xsl:
<?xml version="1.0" encoding="iso-8859-1" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<form name="ExecQuery" class="paramForm" method="post" action="/api/QueryExec">
<table>
<xsl:apply-templates select="QUERY/PARAMLIST/PARAMETER"/>
</table>
<a id ="paramSubmit" class="btn" href="#">Go</a>
</form>
</body>
</html>
</xsl:template>
<xsl:template match="QUERY/PARAMLIST/PARAMETER">
<tr>
<td><xsl:value-of select="LABEL"/></td>
<td><xsl:value-of select="DATATYPE"/></td>
</tr>
</xsl:template>
</xsl:stylesheet>
和我的XML:
<?xml version="1.0" encoding="utf-8"?>
<QUERY>
<QUERY_ID>46</QUERY_ID>
<QUERY_NAME>test for xml</QUERY_NAME>
<PARAMLIST>
<PARAMETER>
<NAME>:cusip</NAME>
<LABEL>Cusip:</LABEL>
<DATATYPE>TEXT</DATATYPE>
<CONTROLTYPE>TEXT</CONTROLTYPE>
<REQUIRED>N</REQUIRED>
</PARAMETER>
<PARAMETER>
<NAME>:isin</NAME>
<LABEL>Isin:</LABEL>
<DATATYPE>TEXT</DATATYPE>
<CONTROLTYPE>TEXT</CONTROLTYPE>
<REQUIRED>N</REQUIRED>
<RANGEENABLED>N</RANGEENABLED>
</PARAMETER>
</PARAMLIST>
</QUERY>
我经历了大约50次迭代才能使其工作但无济于事。我尝试使用xsl:for-each,但是看到了使用apply-templates方法建议的帖子。感谢。