作者KevinAction ((( CNBC )))
看板Wikipedia
標題Re: [問題] 關於if的問題
時間Fri Apr 6 01:42:04 2007
※ 引述《essolo (MOrganEsso)》之銘言:
: ※ 引述《KevinAction ((( CNBC )))》之銘言:
: : 例如我在寫一個模板
: : 要設定一個條件
: : 是{{{年|}}} {{{月|}}} {{{日|}}}都並存時
: : 這個公式才能使用
: : 但我用{{#if: {{{年|}}} {{{月|}}} {{{日|}}} | {{{年|}}}|{{{月|}}}|{{{日|}}}}}
: : 卻會變成只要年月日任一非空白 這個公式就生效了
: : 請問應該要有怎麼做才能改成非並存不可才能生效呢?
: : 先感謝回答的板友了!!
: 可以指定其中一個輸入的時候,才出現{{{年|}}} {{{月|}}} {{{日|}}}
: ex: {{#if: {{{年|}}} |{{{年|}}}|{{{月|}}}{{{日|}}}}}
: btw.k兄的if寫錯了,這樣會變成有輸入的時候出現{{{年|}}}|{{{月|}}},沒輸入的
: 時候會出現{{{日|}}}
抱歉
還想請教一個問題
我想寫一個模板吃維基百科的{{Age}}
(先說明一下 以下所提代碼代表下列意思: B=出生 P=逝世 Y=年 M=月 D=日
因此BY=出生年 BM=出生月... 囧... 以此類推)
而偏偏{{Age}}他只允許2個狀況
{{Age|BY|BM|BD}}............(1)
或{{Age|BY|BM|BD|PY|PM|PD}}...(2)
(1)跟(2)的狀況 那3或6個欄位的值都是缺一不可 (事實上若缺一這公式也無法運作)
但麻煩來了
這個公式不允許空白值的存在
因此 若在(2)只輸入BY、BM、BD的值
變成 {{Age|BY|BM|BD|||}}
這個公式還是無法運作
要就只能整個拿掉 變成(1)的形式
剛剛我本來想到一個解法是
把PY的if設成這樣:
{{Age|BY|BM|BD {{#if: {{PY|}} |
|{{PY|}}}}...(PM、PD 及後略)
但卻會被判讀成if函數的"else"
就算加上<includeonly>
變成 {{#if: {{PY|}} |
<includeonly>|</includeonly>{{PY|}}}} 也沒用... orz...
所以 不知道板上有沒有強者可以教我一下
如何讓公式變成
當BY BM BD PY PM PD都有值時 {{Age|BY|BM|BD|PY|PM|PD}}
只有BY BM BD 都有值時.........{{Age|BY|BM|BD}}
除此之外 皆不顯示........
不好意思 耽誤大家的時間... @@
※ 編輯: KevinAction 來自: 61.223.42.169 (04/06 01:45)
1F:推 essolo:| = {{!}} 04/06 10:14
2F:→ essolo:話說回來,A模板裡面加B模板只能引用喔,不能用B模板的參數 04/06 10:14
3F:推 KevinAction:ㄜ..換作{{!}}好像沒有用 囧 04/07 01:32
4F:→ KevinAction:看來只好放棄了... orz 04/07 01:32