Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152

    [java] gestire un label jsp con servlet

    ciao a tutti
    ho il seguente problema
    sto facendo una jsp di un form per l iscrizione di una attività, a un certo punto ho crato un label per scegliere se attivare o meno un opzione

    il codice del label è cosi fatto
    codice:
    <label for="si" >Si : </label><input id="si" name="scelta" type="Radio"> <label for="no" action="scelta">No : </label><input id="no" name="scelta" type="Radio">
    molto semplice...

    ora nella servlet vorrei gestire la risposta in modo tale che se nella richiesta è stato fatto "si" vada ad una pagina, altrimenti se uno seleziona "no" va ad un altra

    so che gestire per gestire un <form> basta che su @webServlet ci metto la action di una form, e poi estrarre i parametri con "request.getParamenter("value")";
    ma come faccio gestire la scelta di un label?

    grazie per l attenzione

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Ciò che viene scelto non è la label, ma l'input (ovvero, il suo value).

    Il tag label serve solo a dire al browser che quel testo è associato a quel controllo (quindi, se l'utente clicca sul testo, viene attivato il relativo controllo), ma l'input sceglie il valore del controllo, non dell'etichetta (che altro non è che del puro e semplice testo stampato in output a video).


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152
    scusa ma la faccenda mi è poco chiara,
    nella servlet accedo ai parametri di una form tramite request.getParameter("value");
    facciamo finta di avere una stringa nome
    quindi nome = request.getParameter("nome");
    il form è cosi definito :
    codice:
    <form action="blabla" method="get">
    <input type="text" name="nome">
    dunque la servlet va a vedere in "input" il valore di name = "nome" ?

    invece io ora ho un label con i seguenti input
    codice:
    <input id="si" name="scelta" type="Ratio">
    <input id="no" name="scelta" type="Ratio">
    stando a questo ragionamento per fare ciò che voglio dovrei fare una cosa del tipo
    codice:
    String scelta = (String)request.getParameter("scelta");
    quindi la stringa scelta può valere "si" o "no" ?
    dovrei fare un if(scelta.equals(..)) e switchare i casi
    sto ragionando nel modo giusto?
    in pratica la request dipende sempre dal valore "name" di un qualsiasi <input>?

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    No, semplicemente hai impostato male la pagina HTML.

    Un tag INPUT di tipo RATIO dovrebbe essere costruito in questo modo:

    codice:
    <input type="ratio" id="id1" name="pippo" value="1" />Opzione 1
    <input type="ratio" id="id2" name="pippo" value="2" />Opzione 2
    <input type="ratio" id="id3" name="pippo" value="3" />Opzione 3
    Quindi, nella Servlet o JSP:

    codice:
    String s = request.getParameter("pippo");
    Nella stringa "s" avrai "1" oppure "2" oppure "3" a seconda dell'opzione che l'utente ha selezionato. Il valore è dato dal parametro value del controllo input.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    152
    ah ok ho capito!
    questo a prescindere seè un label o un form giusto?

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Originariamente inviato da keykode20
    ah ok ho capito!
    questo a prescindere seè un label o un form giusto?
    Non è che Label e Form siano interscambiabili... è come parlare di treni e fragole. Il Label è un tag (piuttosto inutile nella pratica) che serve solo a dire al browser che una determinata scritta è associata ad un controllo. Non ha nessun effetto lato server... puoi anche dimenticartelo (io non l'ho mai usato da nessuna parte). Il Form, al contrario, è un tag indispensabile per le WebApps, visto che consente di creare un form di dati da inviare ad un server (quindi un pacchetto completo di dati, codificati, che vengono aggiunti al pacchetto HTTP di richiesta).

    Mi sa che ti conviene dare un'occhiatina alle guide sull'HTML.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

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.