list項目の表示について

「まったく何も分からない・・・」そんなユーザーさんの為のフォーラムです。どんなご質問でもお気軽にどうぞ。
返信
suzuki
パワーユーザー
記事: 32
登録日時: 2006年7月07日(金) 15:40

list項目の表示について

投稿記事 by suzuki » 2007年11月28日(水) 18:58

質問させてください。

現在制作の前段階のテストを行っています。
その中で、ひとつのエントリーが複数のカテゴリにまたがる設定をしたいのですが
管理画面で、カテゴリを複数選択できるメニューを作りました。


<data name="classlist" type="list" caption="分野リスト" >
<listitem caption="分野選択" >
<data name="class" type="menu" caption="分野" group="True" >
<menuitem id="1">あ</menuitem>
<menuitem id="2">い</menuitem>
<menuitem id="3">う</menuitem>
<menuitem id="4">え</menuitem>
<menuitem id="5">お</menuitem>
</data>



ここまではできたのですが、ここからがわかりません。

エントリーはこのように複数の設定ができています。
<classlist><listitem id="1"><class>1</class></listitem><listitem id="2"><class>2</class></listitem></classlist>


そこでブラウザ上での表示を

 分野 : あ、い

のように表示させたいのですが、
個別のエントリー画面でのデザイン定義を以下のように書いてみましたが
エラーになってしまいました。

<xsl:for-each select="classlist/listitem" > <xsl:if test="class='1'">あ</xsl:if>
<xsl:if test="class='2'">い</xsl:if>
<xsl:if test="class='3'">う</xsl:if>
<xsl:if test="class='4'">え</xsl:if>
<xsl:if test="class='5'">お</xsl:if>
</xsl:if>


メッセージは

XML parser error 7: mismatched tag (code: 2)

と表示されます。

どうしたらよいでしょうか?
よろしくお願いします。

webmaster
Site Admin
記事: 1451
登録日時: 2004年12月10日(金) 10:09

Re: list項目の表示について

投稿記事 by webmaster » 2007年11月29日(木) 15:15

 suzukiさん、ご質問ありがとうございます。

 「mismatched tag」は、開始タグと終了タグが一致していない場合に出る
エラーで、今回の場合は、

コード: 全て選択

<xsl:for-each select="classlist/listitem" >				<xsl:if test="class='1'">あ</xsl:if>
        	<xsl:if test="class='2'">い</xsl:if>
        	<xsl:if test="class='3'">う</xsl:if>
        	<xsl:if test="class='4'">え</xsl:if>
        	<xsl:if test="class='5'">お</xsl:if>
 </xsl:if>
 の最後の行を

コード: 全て選択

</xsl:for-each>
 にすると解決するのではないかと思います。
 それ以外の考え方等に問題は見当たりませんでした。

 もし解決しなかった場合、お手数ですが再度ご連絡頂ければ幸いです。

suzuki
パワーユーザー
記事: 32
登録日時: 2006年7月07日(金) 15:40

できました!!!

投稿記事 by suzuki » 2007年11月29日(木) 16:37

ありがとうございます。
そんなところに見落としが合ったとは

初歩的なミスでお恥ずかしい限りです。 :oops:

返信