2011-06-01 83 views
-2

即使sel具有「音頻」以外的其他值,爲什麼下面的代碼始終會發出「是」(在HTML中)? (我已經記錄了sel的值並確認了不同的值。)快速播放框架/ Groovy

這是我玩的第一天。所以,我可能會做一些非常愚蠢的事情。

${sel='audio'?'yes':'no'} 

回答

7

我不知道Groovy模板是很好,但我想應該是這樣的:

${sel=='audio'?'yes':'no'} 

您的代碼:

${sel='audio'?'yes':'no'} 

手段;如果'音頻'(非空的字符串總是「真」),那麼sel ='yes',否則'不',所以它永遠不會是'no'。

+0

沒有根據的Groovy參考http://groovy.codehaus.org/Operators#Operators-ElvisOperator%28%3F%3A%29 – roshan 2011-06-01 05:03:55

+0

是正確的,你需要==三元來評估表達式的兩邊;否則三元左側將始終返回。 – virtualeyes 2011-06-01 06:23:13

+0

@roshan我認爲你誤解了鏈接頁面上的groovy示例。它正在檢查布爾值,並將「男性」或「女性」存儲在新變量中。在你的例子中,你想比較一個變量和一個字符串,並輸出結果。因此,您需要'=='進行比較。 – Codemwnci 2011-06-01 06:26:16