我是XSLT的新手,请原谅我的noob问题。
在这里,我试图使用javascript传递xsl:属性的值。 因此,当我单击按钮时,它会假设获取XSL属性的值。 但是我无法获得预期的输出。
代码的HTML部分在这里:
<xsl:attribute name="value">
<xsl:value-of select="110"/>
</xsl:attribute>
<input type="button" name="testBtn" id="testBtn"
value="Test Button" data-test="$value"/>
,javascript代码在这里:
$("#testBtn").click(function() {
var outputResult = $(this).attr('data-test');
console.log(outputResult);
});
单击按钮时的预期输出:
110
我已经包含了一个jsfiddle以防我的问题不清楚 http://jsfiddle.net/rfa75/
我在这里做错了什么?
答案 0 :(得分:1)
正如FrédéricHamidi所说,你正在将html与XSL混合,这不是XSLT转换的工作方式。 无论如何,你可能需要这样的东西(在你的XSL中):
<input type="button" name="testBtn" id="testBtn" value="Test Button">
<xsl:attribute name="data-test">
<xsl:value-of select="110"/><!-- "110" or any expression you should need -->
</xsl:attribute>
</input>
将输出此HTML:
<input type="button" name="testBtn" id="testBtn" value="Test Button" data-test="110"/>
答案 1 :(得分:1)
您还可以使用AVT(属性值模板({}
))执行类似于您原来的操作。
<input type="button" name="testBtn" id="testBtn"
value="Test Button" data-test="{data-test}"/>