1

XSLT はかなり初めてで、何かを成し遂げる方法として with-param を見ました。

        <xsl:variable name="PQB_ID">
         <!-- <xsl:value-of select="wd:SSN"/> -->
           <xsl:value-of>123</xsl:value-of>
         </xsl:variable>

         <xsl:call-template name="testing">
                 <xsl:with-param name="PQB_ID"></xsl:with-param>
         </xsl:call-template>

そして、私のテンプレート名は以下の通りです:

<xsl:template name="testing">
   <xsl:param name="PQB_ID"></xsl:param>
   <xsl:value-of select="$PQB_ID"></xsl:value-of>
</xsl:template>

少なくとも、123 が表示されることを期待します。または、my<xsl:value-of select="wd:SSN"/> がコメント解除されたときに、プログラムで値が表示されることを期待します。このままでは何も返ってきません。

私は何が欠けていますか?

4

2 に答える 2

6
<xsl:with-param name="PQB_ID"></xsl:with-param>

パラメータに空の値を渡します。グローバル PQB_ID 変数の値を渡したい場合は、明示的に行う必要があります

 <xsl:with-param name="PQB_ID" select="$PQB_ID"/>
于 2012-09-26T23:06:45.887 に答える
0

また、XSLT 2.0 では、予期されるパラメーターの型を xsl:param で宣言することをお勧めします。文字列を期待していますか?整数?ドキュメントノードを期待しているとは思いません。これは、コードで慎重に作成しているものです。

 <xsl:variable name="PQB_ID">
   <xsl:value-of>123</xsl:value-of>
 </xsl:variable>

テンプレートが整数を必要とする場合、それを含む新しいドキュメント全体は必要ありません。書くだけ

<xsl:variable name="PQB_ID" select="123"/>
于 2012-09-26T23:49:59.160 に答える