为什么我收到此错误:
org.apache.velocity.exception.ParseErrorException: Encountered "btnBreakPrivateStartDisabled" at /templates/przerwy/askbreaks.vm[line 14, column 97]
Was expecting:
"(" ...
使用时:
<input type="button" id="button_break_private_start" class="breakButtons"
{{#if btnBreakPrivateStartDisabled}}disabled{{/if}}
value="$action.getText('break.ask.private')"
onclick="window.location.href='$req.contextPath/plugins/requests/requestprivatebreak.action'"/>
答案 0 :(得分:2)
#if
被解释为Velocity directive,由于Velocity语法中的条件表达式需要使用括号,因此会产生上面看到的错误。您的语法表明您的意思是由Handlebars处理的#if
指令。您不清楚如何调用Handlebars,但如果您需要在输出中表示文字#if
,则可以escape the #。
请注意,Confluence已内置支持Soy templates(Google Closure模板)。如果这些可能适合您的需要而不是Handlebars,它们将允许您直接编写.soy模板,而无需通过Velocity而不必担心逃脱。