第一次在freemaker中用三元表達式 以爲和js 的一樣 就寫了
${true ? 'checked': ''}
然鵝 ,編輯器紅下劃線報錯,後臺報錯。
編輯器報錯是 identifier expected 意思是期望標識符錯誤 ,就檢查了所有標點符號,沒有問題。
後來想到可能是語法問題就去查了一下。
原來真的是語法問題 ,FreeMarker 本身沒有三目運算符,我們就用內建函數?string( , ) 來判斷
在js中 else 所對應的是 : 而在freemaker中對應的是 ,
以下就是正確的三元表達式。
${true ? string('checked','')}