電子書籍の厳選無料作品が豊富!

やりたいことをストレートに書くとこうなんです。
XSLファイル内

<xsl:for-each select="USERS/USER/">
 <input name="UserID" type="hidden" value=" <xsl:value-of select="@ID"/> "/>
</xsl:for-each>

当然構文エラーでますよね…
この回避方法をご存じの方いませんか?

ちなみに
<xsl:for-each select="USERS/USER/">
 <xsl:value-of select="@ID"/>
</xsl:for-each>
で、値は取れたんですけど…大雑把な説明で申し訳ありません。

A 回答 (2件)

<xsl:stylesheet xmlns:xsl="

http://www.w3.org/TR/WD-xsl">
とありますが、これはバージョンが古いから"{","}"が使えないだけかもしれませんね。

そのままのバージョンで使うなら
<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="@href" /></xsl:attribute>
こちら
</xsl:element>
などとするといいようです。

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
私が使っているバージョンなら"{","}"は使えていますよ。
    • good
    • 0
この回答へのお礼

ご指摘のとおりだと思います。
ただ、<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
を使用すると表自体が出ませんで…

<xsl:element name="a">
<xsl:attribute name="href"><xsl:value-of select="@href" /></xsl:attribute>
こちら
</xsl:element>
を使用し、いずれ{@**}を使おうと思います。
とりあえずは、http://www.w3.orgの中をさまよってみます。
回答本当にありがとうございました。

お礼日時:2002/04/16 14:34

<input name="UserID" type="hidden" value="{@ID}"/>


ではないですか?

この回答への補足

{@ID}は思いついたのですが何故か“{@ID}”とそのまま表示してしまうんです。

設定の問題なのでしょうか…
ソースを丸投げします(不本意ですが…)

↓link.xsl内容
<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">

<xsl:template match="/">
<html>
<head>
<meta content="text/html; charset=shift_jis" http-equiv="Content-Type"/>
<title><xsl:value-of select="/Table/@title"/></title>
</head>
<body style="font-size: 10pt" topmargin="0">
<xsl:apply-templates select="Table/Data"/>
</body>
</html>
</xsl:template>

<xsl:template match="Data">
<table border="1">
<caption>
<xsl:value-of select="@caption"/>
</caption>
<xsl:for-each select="Anchor">
<tr><td>
<a href="{@href}">←★
<xsl:value-of select="@href"/>←☆
<xsl:value-of select="@name"/>
</a>
</td></tr>
</xsl:for-each>
</table>
<hr/>
</xsl:template>

</xsl:stylesheet>


↓data.xml内容
<?xml version="1.0" encoding="Shift_JIS"?>
<?xml-stylesheet type="text/xsl" href="link.xsl"?>
<Table title="タイトル">
<Data caption="その1">
<Anchor href="http://www.kaa.ne.jp" name="かぁ"/>
<Anchor href="http://www.kii.ne.jp" name="きぃ"/>
<Anchor href="http://www.kuu.ne.jp" name="くぅ"/>
<Anchor href="http://www.kee.ne.jp" name="けぇ"/>
<Anchor href="http://www.koo.ne.jp" name="こぉ"/>
</Data>
<Data caption="その2">
<Anchor href="http://www.gaa.ne.jp" name="がぁ"/>
<Anchor href="http://www.gii.ne.jp" name="ぎぃ"/>
<Anchor href="http://www.guu.ne.jp" name="ぐぅ"/>
<Anchor href="http://www.gee.ne.jp" name="げぇ"/>
<Anchor href="http://www.goo.ne.jp" name="ごぉ"/>
</Data>
</Table>

★でのリンク先が{@href}になってしまう。
’<input type="hidden">でなくとも{@**}指定は全て。
☆ではきちんとXMLからデータを取ってきている。
です、宜しくお願いいたします。

補足日時:2002/04/16 11:43
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!