Come posso ottenere i valori di caselle di controllo da casella Struts2 in displaytag a Class Action

StackOverflow https://stackoverflow.com/questions/798118

  •  18-09-2019
  •  | 
  •  

Domanda

Sto lavorando su Struts2 applicazione in cui sto usando displaytag per il supporto impaginazione.

Ora voglio una casella di controllo per ogni riga nella tabella per che sto facendo questo.

<display:table name="countryList" export="true" class="table" id="countryList" pagesize="${selectedPageSize}" decorator="org.displaytag.decorator.TotalTableDecorator" >        
    <display:column property="id"  title="ID" paramId="id" />
    <display:column property="name" title="Name"  sortable="true"/>
    <display:column title="Delete All">
        <s:checkbox  id="check" name="check" fieldValue="%{#attr.countryList.id}" theme="simple"/>
    </display:column>
</display:table>  

<s:submit action="deleteall"  value="DeleteSelected" />

fino a qui il suo lavoro bene. ora voglio eliminare tutti i paesi che vengono controllati tramite la casella di controllo.

per che voglio gli ID dei paesi che vengono controllati .per che devo assumere i valori in un array.

Il problema è come posso trasmettere i valori da jsp e poi farlo presso la classe di azioni

È stato utile?

Soluzione

Se si aggiunge uno String [] per la vostra azione nominato lo stesso del vostro casella di controllo (s) ed esporlo tramite funzioni di accesso (getter / setter) Struts 2 dovrebbe automaticamente popolarlo.

Altri suggerimenti

Questo è come io lo farei.

  1. invece di 'id' per tutte le colonne id, aggiungere un numero di sequenza in modo che ogni id ha un nome univoco, ad esempio 'ID1', 'id2' etc

  2. creare un intercettore che raccoglie i valori dei parametri prefissati con 'id'

  3. configurare la vostra azione per utilizzare l'intercettore

Il mio puntone fu è arrugginito però. Probabilmente c'è un modo migliore.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top