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

    problemi con controlli sui radio button

    Salve a tutti io i seguenti radio button in una form:

    <form method="post" action="prenotazione3.php" name="form" onSubmit="return check(this.tipologia);">

    <table cellspacing="0" cellpadding="0" border="0">
    <tr>
    <td align="left" valign="top"><?php if ($tipologia == 'BB'){ ?><input type="radio" name="tipologia" id="tipologia" value="BB" class="testo1" checked><?php } else { ?><input type="radio" name="tipologia" id="tipologia" value="BB" class="testo1"><?php } ?><font class="testo1">Bed & breakfast</font></td>
    </tr>
    <tr>
    <td align="left" valign="top"><?php if ($tipologia == 'HB'){ ?><input type="radio" name="tipologia" id="tipologia" value="HB" class="testo1" checked><?php } else { ?><input type="radio" name="tipologia" id="tipologia" value="HB" class="testo1"><?php } ?><font class="testo1">Half Board</font></td>
    </tr>
    <tr>
    <td align="left" valign="top"><?php if ($tipologia == 'FB'){ ?><input type="radio" name="tipologia" id="tipologia" value="FB" class="testo1" checked><?php } else { ?><input type="radio" name="tipologia" id="tipologia" value="FB" class="testo1"><?php } ?><font class="testo1">Full Board</font></td>
    </tr>
    </table>
    </form>

    a cui associo la seguente funzione di controllo javascript:

    <script type="text/javascript">
    function check(mod){
    if ((mod.tipologia[2].checked==false)&&(mod.tipologia[1].checked==false)&&(mod.tipologia[0].checked==false)){
    alert ("Devi selezionare una tipologia di soggiorno.");
    return false;
    }
    return true;
    }
    </script>

    pero quando l'ancio l'applicazione mi da sempre un errore che dice:
    tipologia è nullo o non è un oggetto

    pero la funzione va avanti ed effettua i controlli, come posso fare per eliminare questo errore????

    GRZ A TUTTI PER OGNI INTERVENTO

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2000
    Messaggi
    70
    credo che gli passi 2 volte tipologia.
    Alla funzione check() passagli solo this. ciao

  3. #3
    ciao e grazie per il tuo intervento, ho provato ma mi da ancora lo stesso errore....

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2000
    Messaggi
    70
    strano ho provato con una pagina tipo questa e funziona




    <html>
    <body>
    <form method="post" action="prenotazione3.php" name="form" onSubmit="return check(this);">

    <table cellspacing="0" cellpadding="0" border="0">
    <tr>
    <td align="left" valign="top">
    <input type="radio" name="tipologia" id="tipologia" value="BA"><font >TESTO 1</font></td>
    </tr>
    <tr>
    <td align="left" valign="top">
    <input type="radio" name="tipologia" id="tipologia" value="BB"><font >TESTO 2</font></td>
    </tr>
    <tr>
    <td align="left" valign="top">
    <input type="radio" name="tipologia" id="tipologia" value="BC"><font >TESTO 3</font></td>
    </tr>
    </table>

    <input type="submit" name="inv" value="invia">
    </form>


    <script type="text/javascript">

    function check(mod){
    if ((mod.tipologia[2].checked==false)&&(mod.tipologia[1].checked==false)&&(mod.tipologia[0].checked==false)){
    alert ("Devi selezionare una tipologia di soggiorno.");
    return false;
    }

    return true;
    }
    </script>
    </body>
    </html>

  5. #5
    a funzionare funziona, ma hai provato a vedere in basso a sinistra del browser (io uso explorer) esce l'iconcina con l'errore javascript se gli clicchi sopra dice che tipologia è nullo o non è un oggetto...

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    ciao a tutti!
    io ho un problema simile...xò ho una serie di radio e devo controllare che almeno uno sia selezionato,cioè in asp ho:
    <form method="POST" name="frmRicGr" action="DettGr.asp">
    <%
    do while not objRs.EOF
    %>
    <tr><td colspan=2></td></tr>
    <tr>
    <td> <input type="text" name="Gruppo" size="25" value= <%= objRs.fields(1) %> readonly> </td>
    <td align="center">
    <input type="radio" name="Gr" id="i">
    </td>
    </tr>
    <%
    objRs.movenext
    loop
    %>
    <input type="button" value="Dettaglio" name="B1" onclick="Controlla()">
    in javascript x ora ho fatto solo:
    function Controlla() {
    for
    if(document.frmRicGr.Gr.checked==false)
    alert("Seleziona un gruppo");
    else document.frmRicGr.submit();
    }

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    ho provato a risolvere con:
    function Controlla() {
    boolRadio="no";
    for (i=0; i<frmRicGr.Gr.lenght; i++) {
    if (document.frmRicGr.Gr[i].checked==true) boolRadio="si";
    }
    if (boolRadio=="si")
    document.frmRicGr.submit();
    else alert('Seleziona un Gruppo');
    }
    ma da errore nella visualizzazione della pagina

  8. #8
    Originariamente inviato da tonz79
    ho provato a risolvere con:
    function Controlla() {
    boolRadio="no";
    for (i=0; i<frmRicGr.Gr.lenght; i++) {
    if (document.frmRicGr.Gr[i].checked==true) boolRadio="si";
    }
    if (boolRadio=="si")
    document.frmRicGr.submit();
    else alert('Seleziona un Gruppo');
    }
    ma da errore nella visualizzazione della pagina
    Mi stupirei se funzionasse...

    1) accedi ai controlli in maniera non standard. Per accedere al form usa document.getElementById("frmRicGr") e così via anche per gli altri controlli.

    2) La proprietà "checked" degli input radio non è un boolean, quindi la riga

    codice:
    if (document.frmRicGr.Gr[i].checked==true)
    non può funzionare. L'unico valore testabile per il parametro checked è la stringa "checked", così:

    codice:
    if (document.getElementById("mioradiobutton").checked=="checked")
    Ciao

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    risolto così:
    function Controlla() {
    blRadio="no";
    for (i=0; i<document.frmRicGr.Gr.length; i++) {
    if (document.frmRicGr.Gr[i].checked==true)
    blRadio="si";
    }
    if (blRadio=="si")
    document.frmRicGr.submit();
    else alert('Seleziona un Gruppo');
    }

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.