Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    33

    radio button, come raggrupparli?

    Allora per semplificare il mio problema posto un piccolo codice di esempio creato appositamente per scrivervi...
    Se salvate la pagina e fate questa sequenza di operazioni c'è una incongruenza con i valori stampati del radio button...
    ...sembra che vengano confusi.
    Notate inoltre come appena caricata la pagina (e non refreshata dopo l'apertura) l'evento onBlur nn si azioni.
    Ricapitolando:
    a) aprite la pagina
    b) spostatevi da A' ad A'' (non scatta l'evento onBlur)
    c) adesso spostatevi da B' a B'' (stampa il valore A'', mi aspettavo B')
    d)...e tante altre incongruenze

    ================================================== ===========
    ==========================ESEMPIO================= ===========

    <html>
    <head>
    <title>Prova</title>
    <script language="javascript">
    function stampaValore(controllo) {

    var valore=controllo.value;
    alert(valore);
    //alert("error");

    }
    </script>
    </head>

    <body>
    <form name="prova">
    <table>
    <tr>
    <td><label><input type="radio" checked name="A" value="valoreAprimo" onBlur="stampaValore(this);">A'</label>

    <label><input type="radio" name="A" value="valoreAsecondo" onBlur="stampaValore(this);">A''</label>
    </td>
    <td><label><input type="radio" checked name="B" value="valoreBprimo" onBlur="stampaValore(this);">B'</label>

    <label><input type="radio" name="B" value="valoreBsecondo" onBlur="stampaValore(this);">B''</label>
    </td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    ==========FINE ESEMPIO====================================


    Il problema credo (anzi sono certo) sia il fatto di avere 2 coppie di radio button....
    ...ma fino ad oggi non mi era mai capitato di avere questa esigenza e quindi scopro il problema oggi...

    Concretamente: posso raggrupare le coppie di radio button in qualche modo? non posso credere che non sia possibile fare questa cosa...


    Ringrazio anticipatamente tutti.

  2. #2
    carissimo, la soluzione è semplice: passa da onblur a onclick.
    infatti, l'evento blur viene innescato quando un elemento perde il focus, non quando viene cliccato.

    in sostanza avrai:

    codice:
    <table>
    <tr>
    <td><label><input type="radio" checked name="A" value="valoreAprimo" onclick="stampaValore(this);">A'</label>
    
    <label><input type="radio" name="A" value="valoreAsecondo" onclick="stampaValore(this);">A''</label>
    </td>
    <td><label><input type="radio" checked name="B" value="valoreBprimo" onclick="stampaValore(this);">B'</label>
    
    <label><input type="radio" name="B" value="valoreBsecondo" onclick="stampaValore(this);">B''</label>
    </td>
    </tr>
    </table>
    per il raggruppamento ragioni correttamente: basta dare ai radiobutton lo stesso nome.

    ciao bello, ci si vede in facoltà. ;)

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    33
    Perfetto risolto, sei un grande!
    GRAZIE TANTE.

    Adesso a scopo di ricerca mi dite perchè il javascript confonde i controlli in questo caso?
    Lo so che onBlur è quando perde il focus quindi perchè:
    1) alla prima perdita del focus non viene chiamato l'evento?
    2) vengono confusi i controlli??


    ESSENDO A SCOPO DI RICERCA NON PRETENDO UNA RISPOSTA (diciamo è meno urgente)..
    ...VORREI SOLAMENTE SODDISFARE LA MIA CURIOSITA'!


    CMQ VAR E' UN GRANDE.

  4. #4
    tutto risolto, dunque. :)
    sempre a tua completa disposizione.

    :)

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    33
    ragazzi var mi ha dato una lezione privata in facoltà..
    è carissimo! 50 euro ad ora!

    sconsigliatissimo

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.