0

私はコーディングに不慣れで、これが私の最初の質問です。私は可能な限りすべての連結例を検索して試しました。

XSLTを使用して、生成されたテーブルの最後の列に、次のように結果/動作するハイパーリンクを作成することを検討しています...

<a href="http://www.mysite.com/search/?q[all][]=123456" target="_blank">link</a>

ここで、123456はから派生してい<title_id>ます。前の列のタイトルIDを返すことはできますが、検索クエリとしてハイパーリンクに追加するのは困難です。

私はXML(簡略化)を持っています:

<response>

    <results>

        <result>

            <tracks>

                <track>

                    <title_id>123456</title_id>

                    <product_id>2</product_id>

                    <track_id>3</track_id>

XSLでXMLから必要なものを取り出し、Web用のテーブルを作成しています...

 <html xsl:version="2.0"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
     xmlns="http://www.w3.org/1999/xhtml">

 <body>
 <table border="1" cellpadding="4" cellspacing="0">
 <tr bgcolor="#fb0006" align="center">
  <td><b>#</b></td>
  <td><b>Artist</b></td>
  <td><b>Track</b></td>
  <td><b>Remix</b></td>
  <td><b>ID</b></td>
  <td><b>Link</b></td>
</tr>

 <xsl:for-each select="//response/results/result/tracks/track">

 <tr>
  <td><xsl:number value="position()" format="01" /></td>
  <td><xsl:value-of select="bundle_mirror_artists"/></td>
  <td><xsl:value-of select="track_title"/></td>
  <td><xsl:value-of select="track_mix_title"/></td>
  <td><xsl:value-of select="title_id"/></td>
  <td><a href="{concat('http://www.mysite.com/search/?q[all][]=', '<xsl:value-of select="title_id"/>')}" target="_blank">link </a></td>
 </tr>

 </xsl:for-each>

 </table>
 </body>
 </html>

最後のを除いてすべてが機能<td>します。最後のは、何も返さないか、解析されません。

助けていただければ幸いです。

4

1 に答える 1

0

たぶん、2番目の引数を変数にしようとします。

<xsl:variable name="title" select="title_id" />

そして、$titleconcatへの2番目の引数として渡します。

また、HTMLでは<ahref="...">タグを適切に閉じる必要があると思います。

于 2013-02-20T01:35:26.410 に答える