テーブルメーカーで
フィールドのid 1に価格
id2に「選択ボタン」で「販売状況」のチェックボックスを付けたとして、以下の様にテンプレートを書きます。
<!--if id="1"-->
<!--field id="1"--><!--/field-->
<!--else-->
<!--if id="2"-->
<p>売り切れ</p>
<!--else-->
<p>準備中</p>
<!--/if-->
<!--/if-->
この状態でid 1に値がなく、id 2に「チェック」を入れた状態だと、なぜか「売り切れ」「準備中」とどちらも表示されてしまいます。
表示して欲しいのは「売り切れ」だけなのですが、if文の入れ子はできないのでしょうか?
あ、すみません。間違いました。逆でした。
この状態でid 1に値がなく、id 2に「チェック」を入れた状態だと、「売り切れ」「準備中」のどちらも表示されません。
ご質問ありがとうございます。
お世話になっております。
ご推察の通り、if タグは入れ子では使用できない仕様となっています。
条件を工夫してご呈示いただいた条件を再現できるかどうか、なんらかの対応ができないかどうか検討中です。
明日までにはお返事できるかと思いますので、しばらくお待ちいただけましたらと思いますm(_ _)m。
〈追記〉
入れ子にはできませんが、elseif や値の一致などを追加することにしました。現在テスト中です。
現状でも否定演算子「!」が使えますので、ある程度対応できるかと思います。(マニュアルには記載し忘れていました…)
一通りテストが終わりましたらまたご報告いたします。
お待たせいたしました。
本日公開した ver2.0.20141018 より、if タグが拡張されました。入れ子にはできませんがより複雑な条件を指定できるようになりました。
フィールドIDの指定には下記を使用できます。
id の値について条件を指定することが出来ます。
cond="..." で細かく条件を指定できます。
お使いの例ですと、次のように設定できます。
<!--field id="1"--><!--/field-->
<!--if id="1 && 2"-->
<p>売り切れ</p>
<!--elseif id="1"-->
<p>準備中</p>
<!--/if-->
以上参考になりましたら幸いです。