我正在处理一个页面,该页面上有一个从数据库查询中填充的下拉菜单。我还有一个传入的参数,如果它已填充,将匹配下拉列表中的一个选项。如果填充了该参数,我希望选择drowpdown中的选项。我的直觉是执行以下操作(其中foo
是FOREACH
中的条目):
<% IF param -eq foo %>
<option value="foo" selected="selected">foo</option>
<% ELSE %>
<option value="foo">foo</option>
<% END %>
问题是我收到foo
是无法识别的令牌的错误。
我无法在文档或示例中找到任何可以实际使用上述param -eq foo
构造的证据。我可以找到的IF
语句的示例不使用比较运算符。它们基本上只读取布尔参数或检查参数是否有值。但是因为它并没有拒绝-eq
令牌,所以我一直希望能够做到这一点并且我还没有找到正确的语法或者找到了文档。
答案 0 :(得分:1)
找到相关文档:http://template-toolkit.org/docs/manual/Directives.html#section_IF_UNLESS_ELSIF_ELSE
它不是-eq
,而是==
。但在这种情况下,我仍然不确定为什么-eq
没有抛出错误。