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」のようにDBに保存するには、1つのフィールドにリストを渡す必要があります。

この方法でやってみます

<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

1 つの文字列行で値を送信するには、両方のチェックボックスで同じ名前を使用し、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

エラーはおそらく<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 に答える