我知道這是一個老問題,它已經被多次傳遞過,但我想知道是否有人可以擴展是否可以通過連接到查詢字符串的URL XSLT 1.0,並可用作稍後用於XSLT轉換的參數。XSLT:將URL查詢字符串作爲參數傳遞
例如,我有http://www.mydomain.com/mypage.htm?param1=a¶m2=b
通過XSLT一個網址,我找的沿着線的東西造成的:(
<xsl:param name="param1">a</xsl:param>
和<xsl:param name="param2">b</xsl:param>
其中兩個參數名稱參數1 ,param2),它的值(a,b)已經從quesrystring中提取出來,允許我在以後的if條件中使用$param1
和$param2
例如<xsl:if test="$param1 = 'a'>
出來,但如果我們使用<xsl:if test="$param1 = 'b'>
出來的假。
我已經在這裏看到了類似的問題:Retrieve page URL params or page URL in XSLT它使用str-split-to-words
模板,但我已經失敗了它的工作(可能是因爲我實現它的錯誤的方式),因此它如何可以在實踐中做任何工作的例子是非常有益。
XSLT:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ext="http://exslt.org/common">
<xsl:import href="http://fxsl.cvs.sourceforge.net/viewvc/fxsl/fxsl-xslt2/f/strSplit-to-Words.xsl"/>
<xsl:output indent="yes" method="html"/>
<xsl:template match="/">
<xsl:variable name="vwordNodes">
<xsl:call-template name="str-split-to-words">
<xsl:with-param name="pStr" select="$pQString"/>
<xsl:with-param name="pDelimiters" select="'?&'"/>
</xsl:call-template>
</xsl:variable>
<xsl:apply-templates select="ext:node-set($vwordNodes)/*"/>
</xsl:template>
<xsl:template match="word">
<xsl:value-of select="."/>
<xsl:text>
</xsl:text>
</xsl:template>
</xsl:stylesheet>