将param作为xpath表达式传递给XSLT-javascript
pass param as xpath expressin to XSLT- javascript
在以下方面寻找解决方案:这是我的javascript函数,它为我的xsl文件设置了一个参数,这个参数包含一个字符串查询,它有一个xpath-syntx
queryFilter = "*/person[name='John']";
function getXSLDoc(xslDocument,xmlDocument,queryFilter) {
..
var processor = new XSLTProcessor();
processor.setParameter(null,"name",queryFilter);
....
}
现在,在我的xslt文件中,我想获取queryFilter字符串并在循环中使用它或创建一个变量:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml">
<xsl:output method="html" indent="yes"/>
<xsl:param name="queryFilter"/>
<!-- Lets say I want to create a local variable and use it to loop on a node -->
<xsl:variable name="varFilter" select="$queryFilter"/>
<xsl:for-each select="$**varFilter**">
<tr>
<xsl:apply-templates select="name"/>
..
</tr>
</xsl:for-each>
</xsl:stylesheet>
现在,如何将我在javascript函数上设置的参数用作xpath表达式?
不支持在运行时动态评估完整的XPath表达式。但在许多情况下,只要输入一个数字或字符串值就足够了,您可以在比较中使用该值,例如
name = "John";
和
processor.setParameter(null,"name",name);
然后在XSLT中有
<xsl:param name="name"/>
和
<xsl:for-each select="*/person[name = $name]">...</xsl:for-each>
相关文章:
- 如何在XSLT文档中的javascript中使用AND运算符
- 如何将参数从Javascript函数传递到XSLT
- XSLT:在元素标记中输出Javascript
- 将param作为xpath表达式传递给XSLT-javascript
- 定义DOCTYPE时XSLT和javascript的怪异行为
- XSLT下拉菜单不调用javascript函数
- 在 XSLT 工作表中的 JavaScript 中插入属性的问题
- 如何在javascript中解析xml并从中提取xslt元素
- XML/XSLT in JavaScript
- XSLT中的Javascript可能
- XSLT 2.0 错误处理:向 JavaScript 抛出异常
- 如何在 Sitecore 的 xslt 文件中添加 javascript 属性
- Javascript XSLT Transformation with XML 存储在变量中
- 如何在 XSLT 中包含对 JavaScript 的调用
- 如何使 XSLT Javascript 扩展函数返回节点集
- 将javascript与XML和XSLT一起使用时出现问题
- XSLT JavaScript:尝试使用包含破折号的名称定义函数时出错
- XSL和XSLT Javascript在IE中工作,但不能在Chrome和Firefox中工作
- 一个独立的XSLT javascript库
- 包含HTML标记的XHTML XSLT Javascript