如何在 Struts 2 中呈现没有隐藏字段的复选框

How to render checkbox without hidden field in Struts 2

当我们使用以下代码创建 Struts2 复选框时

<s:checkbox name="checkMe" fieldValue="true" label="Check Me for testing"/>

下面给出了HTML表示(我指的是https://www.mkyong.com/struts2/struts-2-scheckbox-checkbox-example/

<input type="checkbox" name="checkMe" value="true" id="xx_checkMe"/>
<input type="hidden" id="__checkbox_xx_checkMe" name="__checkbox_checkMe" value="true"/>
<label for="resultAction_checkMe" class="checkboxLabel">Check Me for testing</label>

是否可以消除创建隐藏参数,因为它会导致我的应用程序存在安全漏洞

它使用 freemarker 模板 checkbox.ftl 生成 html 输出。您可以从源存档中复制并修改此模板,然后使用 templatetemplateDir 属性指向自定义模板。

或使用存档模板,但需要添加velocityvelocity-tools依赖项。

<s:checkbox name="checkme" template="checkbox.vm" templateDir="template/archive"/>