2

我会尝试像这样在我的复选框列表中放置一张图片

<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">

但是我需要在一个字段中传递一个列表以将其保存在我的数据库中,例如“true,false”。

我会尝试这种方式

<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">'
                   }"

/>

但它不起作用。帮助

4

3 回答 3

0

要在一个字符串行中提交值,请在两个复选框上使用相同的名称,并且您的evento.eve_tarjeta_cred变量必须是字符串。使用<label>标签为复选框创建图像标签。

注意:未选中的复选框(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>
于 2013-07-12T09:09:46.870 回答
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];
            }
于 2013-08-15T14:46:35.393 回答
0

错误可能在<img/>标签声明中:当您打开第一个双引号时,您正在关闭该list属性。

将它们放入 Action 中(并使用 list 属性中的 getter 读取值),或尝试手动转义它们;

<s:checkboxlist id="chkTarjeta" name="evento.eve_tarjeta_cred" 
  list="{
    '<img alt=&quot;10&quot; src=&quot;./images/tarjetasCredito/amex.png&quot;>',
    '<img alt=&quot;10&quot; src=&quot;./images/tarjetasCredito/cmr.png&quot;>'
  }"
/>

我不确定 Struts2 是否会转义这些值;如果可以,唯一的机会就是扩展标签。

于 2013-07-12T08:32:13.043 回答