2016-05-25 23 views
1

私はXSLTのコロンが名前空間として使われていることを理解していますが、コロンで名前空間以外の問題が発生しています。属性値に基づいてXSLTの値を取得する方法は?

基本的に、属性名にコロンを付けたフィールドの値を取得する必要があります。

例:

私は正確に名前を選択することができるようにしたい
<root> 
    <Name name="Attn:">whatever</Name> 
    <Name name="somethingelse">something</Name> 
</root> 

"事務局担当:" 属性を、私はそれを変更することができますので、そう:

<root> 
    <AttentionName>Whatever</AttentionName> 
    <Name>something</Name> 
<root> 

を試してみました:

<AttentionName> 
    <xsl:value-of select="root/Name/@Attn:"/> 
</AttentionName> 

ただし、コロンが選択値に含まれないことを示すエラーが出力されます。

答えて

2

属性name)にはコロンが含まれていません。 Attn:)は@nameにコロンを含みます。 @name属性Attn:

<AttentionName> 
    <xsl:value-of select="/root/Name[@name='Attn:']"/> 
</AttentionName> 
+0

優れたに等しいName要素の文字列値を取得するために、次のようにあなたは単にあなたのXPathを調整することができます

、あなたの助けをありがとう!私はXSLTで新しく、それが私を狂ってしまった。 – rshannon

+0

私は戻って来なければならなかったが、x時間が経過するまで答えとしてそれを受け入れさせなかった。 – rshannon

関連する問題