2016-08-11 6 views
0

私はxslを学んでいます。私は2つの変数の値を連結し、それらの間にハイフンを入れようとしています。これは私のコードです:xsl:2つの変数を新しい変数に連結する

<xsl:variable name="checkboxvalue" select="translate(@value, ' ', '')" /> 
          <xsl:variable name="questionname" select="{ancestor::element/attribute::name}"/> 
      <xsl:variable name="newcheckboxvalue" select="concat($questionname,-,$checkboxvalue)"/> 

私はこの.xslファイルを使用してページを実行すると、私は得ることパス式で 予期しないトークン\「{\」「 『致命的なエラー:予期しないトークン\』、\」経路式

は助けてください。

+0

コードを表示します。 – randominstanceOfLivingThing

答えて

1

あなたが取得しているエラーは、XSLTはすでにselect属性で式を期待して、ここでは中括弧を使用することを許可されていない第二の可変

<xsl:variable name="questionname" select="{ancestor::element/attribute::name}"/> 

にあります。あなたはちょうどこれを行う必要があります。

<xsl:variable name="questionname" select="ancestor::element/attribute::name" /> 

またはこの...

<xsl:variable name="questionname" select="ancestor::element/@name" /> 

はまた、あなたの3番目のステートメントのために、あなたはそれを治療するための、アポストロフィでハイフンをラップする必要があります場合は、文字列

<xsl:variable name="newcheckboxvalue" select="concat($questionname, '-' ,$checkboxvalue)"/> 

です中括弧の使用方法については、Attribute Value Templatesを参照してください。

+0

ヘルプとリンクありがとう! –

関連する問題