2017-11-09 7 views
-1

これは大学目的のためのものです。私のxsltは動作していません。私はfor-each withとif文を実行しようとしています。私は=または!=でそれを試してみるとうまくいかない。if elseを含む各ループのXSLT

ご協力いただければ幸いです。 (インデントが悪いことは申し訳ありません) coupon変数だけxsl:ifブロック内に存在するあなたのコードで

<xsl:for-each select="$rankingItems/userDefinedVectorLine[userDefinedField/fieldLabel='LIST' 
and (userDefinedField[fieldLabel='COUP'] or userDefinedField[fieldLabel='PAY']) ]" > 
<xsl:variable name="date" select="userDefinedField[fieldLabel='LIST']/fieldValue"/> 
<xsl:variable name="Tempo" select="userDefinedField[2]/fieldLabel"/> 
<xsl:if test="$Tempo!='COUP'" > 
    <xsl:variable name="coupon" select="'TITI'" /> 
</xsl:if> 
    <xsl:value-of select="$date"/> 
    <xsl:value-of select="$coupon"/> 
</xsl:for-each> 
+0

入力XMLと予想される出力を共有できれば、XSLTで動作していないものを理解しやすくなります。 –

答えて

1

。 それを使用しようとすると(xsl:ifブロックの外)、空の値が得られます。

おそらく例えば、あなたが「無条件」この変数を作成する必要がありますが、そのコンテンツ は、条件に基づいて作成する必要があります。

<xsl:variable name="coupon" select="if ($Tempo!='COUP') then 'TITI' else ''" /> 

もう一つ質問:coupon変数 が含まれていることがそれあなたの意図され'TITI'定数文字列)? またはその値はTITI(子)の要素の内容にする必要がありますか?

2番目がtrueの場合は、囲みアポストロフィなしでTITIと書き込みます。

最後の発言:質問にはソースXMLコードも指定してください。

関連する問題