2017-03-14 3 views
0

私はxmlファイルから翻訳コンテンツをロードしているxsltテンプレートを持っています。XSL - プレースホルダを動的に設定するときの空白の問題

入力フィールドにプレースホルダを動的に設定する必要がありますが、明らかに空白が残っています(プレースホルダは右側に移動しています)。ここで

enter image description here

私のコードです。

<xsl:attribute name="placeholder"> 
<xsl:value-of select="/paygate/language/computop.creditcard.number.message"/> 
</xsl:attribute> 

私はまた、ファイルの先頭に

<xsl:strip-space elements="*"/> 

を設定し、ライン間の空白を削除してみました。何も働いていない:(

答えて

1

XSLTプロセッサは、デフォルトでは<xsl:attribute>の直接の子である空白のみのテキストノードを削除するべきである。現在、あなたを変換するには、その後、それらの値で不要な先頭または末尾の空白をplaceholder属性を生成している場合は、

<xsl:attribute name="placeholder"> 
<xsl:value-of select="normalize-space(string(/paygate/language/computop.creditcard.number.message))"/> 
</xsl:attribute> 
:。その場合は

その結果が空白のストリッピングの対象ではありません、あなたは属性値に標準normalize-space() XPath関数を適用することを検討可能性があり、私はそれが<xsl:value-of>要素のアプリケーションから来ていると結論します

normalize-space()は、(文字列)引数から先頭と末尾の両方の空白を削除しますが、空白文字の各内部実行を1つの空白文字に置き換えます。

+0

チャームのように働いてくれてありがとう! – dkiriakakis

関連する問題