2
A
回答
1
除非您使用像Saxon 9的商业版本这样的XSLT处理器,并且您有像http://www.saxonica.com/documentation/extensions/instructions/call-template.xml这样的扩展指令,否则您需要使用xsl:choose。
3
如果您想调用动态选择的模板,那么通常可以使用xsl:apply-templates而不是xsl:call-template来完成。这样做的一个非常普遍的方式是改变每个
<xsl:template name="n">
到
<xsl:template name="n" match="xsl:template[@name='n']">
,然后更改无效
<xsl:call-template name="$x"/>
一个合法的
<xsl:apply-templates select="document('')/*/xsl:template[@name=$x]">
,并通过上下文项目为一个参数如果需要。但是,如果我们更了解您正在尝试解决的问题,我们可能会提出更好的解决方法。
+0
我试图保留模板库中的所有表单,然后根据请求输出特定的表单,而不必在每次添加新的支持表单时更新选择。尽管这样做有效,但“下一个人”理解起来似乎有点困难。 –
相关问题
- 1. 未知提供商名称'OraOLEDB.Oracle.1'参数名称错误
- 2. 转换由名称参数
- 3. 与提供的名称
- 4. 功能,创建宏作为参数提供的宏名称
- 5. 使用`apply with`而不提供Coq中的参数名称?
- 6. 的Rails 3 - 路由和参数名称
- 7. 提供视图名称PartialViewResult
- 8. 为委托类型提供参数名称
- 9. 如何使用xsl:参数值的方式在xsl:属性名称=“宽度”
- 10. MVC路由 - 参数名称问题
- 11. URL路由参数名称,订单
- 12. 获取作为函数参数提供的列表变量的名称
- 13. SharePoint 2010中的XSl参数当前显示名称
- 14. ODBC .Net的提供者的名称?
- 15. Ember:为嵌套路由提供模板名称
- 16. 将本地化路由名称提供给i18next-express-middleware
- 17. 提供一个名称的XmlRootElement将
- 18. ETW提供商的渠道名称
- 19. 提供spark.csv方法的名称列表
- 20. Ruby的soap4r不提供名称空间?
- 21. ASP.NET WebApi更改供稿路由名称
- 22. 从参数*名称*中提取值?
- 23. XSL值作为XSL元素名称
- 24. 提供名称不正确的帐户名称
- 25. 如何更改GoogleOauth2 omniauth提供程序名称的名称?
- 26. Solr中原来的名称提供替代名称,而搜索
- 27. 参数化查询需要一个未提供的参数值。参数名称:0
- 28. XSL - 如何从模板中调用全局参数名称?
- 29. 提供的参数无效
- 30. mysql_fetch_assoc提供的参数
是的,我相信是的。我的意思是在XPath 2.0中,可以使用内联“if”在用户定义函数之间进行选择,但只适用于有限的情况。 – LarsH