[Seasar-user:14904] Re: [Teeda] items が空の場合

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2008年 7月 2日 (水) 20:00:34 JST


小林 (koichik) です.

Date:    Wed, 2 Jul 2008 16:36:21 +0900
From:    "TANAKA Masayuki" <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:14901] [Teeda] items が空の場合

> tbody は空を許容していないようで firefox2.0 では少し崩れた
> 表示になってしまいました

確かに <tbody> の定義は (tr)+ だし,<tr> は (th|td)+ だし,
同じように <ul> や <ol> は (li)+ で <dl> は (dt|dd)+ なので,
items が空の場合にこれらの要素を出力するのはおかしいですね.
空の場合は id="〜Items" の要素ごと出さないというのが正しい
ということで修正しました.
# forEach のみ.grid は未調査というか対応せずにしたいな,と.

ただし,<table> の定義が 〜 (tbody+|tr+) だったりするので,
<tbody> が一つの場合 (多くの場合はそうだと思いますが) は Items が
空の場合に <table> が出力されないようにする (condition を使う)  のが
正しいことになりますね.
<table> に id="〜items" を指定していた場合は <table> ごと
出力されなくなります.

SNAPSHOT をデプロイしたのでご確認ください.

http://maven.seasar.org/maven2-snapshot/org/seasar/teeda/teeda-core/1.0.13-sp2-SNAPSHOT/teeda-core-1.0.13-sp2-20080702.105326-6.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/teeda/teeda-ajax/1.0.13-sp2-SNAPSHOT/teeda-ajax-1.0.13-sp2-20080702.105326-6.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/teeda/teeda-extension/1.0.13-sp2-SNAPSHOT/teeda-extension-1.0.13-sp2-20080702.105326-6.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/teeda/teeda-tiger/1.0.13-sp2-SNAPSHOT/teeda-tiger-1.0.13-sp2-20080702.105546-6.jar

なお,teedaCustomize.dicon で

<component class="org.seasar.teeda.extension.util.TeedaExtensionConfiguration">
  <!-- itemsが空の場合でもforEachの指定された要素を出力する場合 (Teeda 1.0.13-sp1 以前と互換) は以下のプロパティを true に設定 -->
  <property name="outputForEachIfEmptyItems">true</property>
</component>

と指定した場合は従来と同様に items が空でも <tbody> 等
id="〜Items" の指定された要素を出力します.


-- 
<component name="koichik">
    <property name="fullName">"Koichi Kobayashi"</property>
    <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
    <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>



Seasar-user メーリングリストの案内