有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在velocity静默表示法中转义“[”

我的vm文件中有一个复选框,如下所示:

<input name="ISPOperatorList[0].ISPOperatorAccessStatus" id="OPERATORAccessDeny0"
                    #if( $!serviceProviderBean.ISPOperatorList[0].ISPOperatorAccessStatus == "no") checked="checked" #end
                    class="checkBoxRadio"  type="checkbox" value="no" />

我添加了#if条件来检查预定义的“no”值是否来自后端。如果它来了,我会选中复选框

我现在加载页面时出现此错误:

org.apache.velocity.exception.ParseErrorException: Encountered "[" at admin/ispEnrollmentPage.vm[line 203, column 91]Was expecting one of:
<RPAREN> ...
<WHITESPACE> ...
"-" ...
"+" ...
"*" ...
"/" ...
"%" ...
<LOGICAL_AND> ...
<LOGICAL_OR> ...
<LOGICAL_LT> ...
<LOGICAL_LE> ...
<LOGICAL_GT> ...
<LOGICAL_GE> ...
<LOGICAL_EQUALS> ...
<LOGICAL_NOT_EQUALS> ...

共 (1) 个答案

  1. # 1 楼答案

    我也遇到了类似的问题。 唯一的解决办法是使用get(index)而不是[index]

    <input name="ISPOperatorList[0].ISPOperatorAccessStatus" id="OPERATORAccessDeny0"
                    #if( $!serviceProviderBean.ISPOperatorList.get(0).ISPOperatorAccessStatus == "no") checked="checked" #end
                    class="checkBoxRadio"  type="checkbox" value="no" />