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