Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [JSP] Recupero valore checkbox multiple

    Ho una pagina jsp in cui estraggo ed impagino dei record. Ad ogni riga scritta, affianco una checkbox con l'id del record estratto. Dovrei passare l'id dei record selezionati alla pagina successiva. Finchè si tratta di una singola checkbox, posso utilizzare
    codice:
    request.getParameter("checkbox")
    ma quando si tratta di più checkbox, come devo fare?
    Facendo una ricerca, ho trovato questa discussione discussione
    Ho provato a seguire i suggerimenti, ma non ottengo il risultato voluto...
    In particolare, con queste istruzioni
    codice:
    String deleteArray[] = request.getParameterValues("select");
    String selected="";
    if (deleteArray != null) {
      if(deleteArray.length == 1) {
         // Only one item is selected
         selected = deleteArray[0];
      } else {
        // multiple items selected
        for (int i = 0; i < deleteArray.length; i++) {
          selected += deleteArray;
          if( i < deleteArray.length -1) {
            selected += ",";
        }
     }
    }
    ottengo questo risultato:
    codice:
    [Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f,[Ljava.lang.String;@943a0f
    Mentre, se modifico in questo modo questa istruzione
    codice:
    selected += deleteArray[i];
    come risultato ottengo un array con gli id di tutti i record più gli id dei record selezionati; cioè:
    codice:
    1,2,3,3,4,5,6,7,7,8...ecc
    Come devo fare ad ottenere l'array dei soli record selezionati?

  2. #2
    Ho fatto altre prove...se alla checkbox non associo l'id del record, nell'array, invece di ripetersi l'id del record selezionato, mi compare un "on"..
    Ho provato a risolvere in questo modo:
    codice:
    String deleteArray[] = request.getParameterValues("select");
    String selected="";
    for(int i = 0; i < deleteArray.length; i++){
      if(deleteArray[i].equals("on")) {
         selected = deleteArray[i-1];
      } else {
          selected += "," + deleteArray;
      }
     }
    }
    Che ne pensate?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.