我会尝试将图像放在我的复选框列表中,如下所示
<s:checkbox name="evento.eve_tarjeta_cred1" id="chkAmex" />
<img alt="10" src="./images/tarjetasCredito/amex.png">
<s:checkbox name="evento.eve_tarjeta_cred2" id="chkCmr" />
<img alt="10" src="./images/tarjetasCredito/cmr.png">
但是我需要在一个字段中传递一个列表以将其保存在我的数据库中 “真,假”。
我会以这种方式尝试
<s:checkboxlist id="chkTarjeta" name="evento.eve_tarjeta_cred"
list="{
'<img alt="10" src="./images/tarjetasCredito/amex.png">',
'<img alt="10" src="./images/tarjetasCredito/cmr.png">'
}"
/>
但它不起作用。帮助
答案 0 :(得分:0)
错误可能在<img/>
代码声明中:当您打开第一个双引号时,您正在关闭list
属性。
将它们放入Action(并使用list属性中的getter读取值),或尝试手动转义它们;
<s:checkboxlist id="chkTarjeta" name="evento.eve_tarjeta_cred"
list="{
'<img alt="10" src="./images/tarjetasCredito/amex.png">',
'<img alt="10" src="./images/tarjetasCredito/cmr.png">'
}"
/>
我不确定Struts2是否会逃避这些值;如果愿意,唯一的机会就是扩展标签。
答案 1 :(得分:0)
要在一个字符串行中提交值,请在两个复选框上使用相同的名称,并且evento.eve_tarjeta_cred
变量必须是字符串。
使用<label>
标记为复选框创建图像标签。
注意:未提交未经检查的chekbox(false
值)。
<label>
<s:checkbox name="evento.eve_tarjeta_cred" id="chkAmex" />
<img alt="10" src="./images/tarjetasCredito/amex.png" />
</label>
<label>
<s:checkbox name="evento.eve_tarjeta_cred" id="chkCmr" />
<img alt="10" src="./images/tarjetasCredito/cmr.png" />
</label>
答案 2 :(得分:0)
我这样解决了,在我的JSP中我得到了这个
<s:checkbox name="t1" id="chkAmex" />
<img alt="10" src="./images/tarjetasCredito/amex.png">
<s:checkbox name="t2" id="chkCmr" />
<img alt="10" src="./images/tarjetasCredito/cmr.png">
在我的Action中我声明了一个全局变量“tarjetas”,带有get和set,显然是
tarjetas = t1 + "," + t2;
evento.setEve_tarjeta_cred(tarjetas);
eventoservice.RegistraEvento(evento);
并在更新案例中显示,只需执行此操作
String[] tarjetasArray = evento.getEve_tarjeta_cred().split(",");
for (int i = 0; i < tarjetasArray.length; i++) {
t1 = tarjetasArray[0];
t2 = tarjetasArray[1];
}