Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18

Discussione: Controllo campi radio

  1. #1

    Controllo campi radio

    ciao a tutti ho questo problema ho die campi radio nel mio form...

    questo è il codice che uso per il controllo:

    Codice PHP:
    else if ((!radio_tipo[0].checked) && (!radio_tipo[1].checked)){
    alert("Selezionare un tipo di richiesta/prenotazione!");
    return 
    false;

    funziona benissimo... però il problema sorge quando ho un numero di campi radio superiori a 2 ad esempio ne potrei aver 3-4-5-6 ecc.. come potrei fare nel risolvere la cosa?

    magari con un campo for

    for (i=0; i<=radio_tipo.length; i++) {
    }

    però non lo riesco ad implementare ... :master:

    questo è il mio campo radio:

    Codice PHP:
    <input type="radio" name="radio_tipo" visible=false  value="00" /> 

  2. #2
    ciao, prova così:

    codice:
    var rb = document.nomeform.radio_tipo;
    selezionato = false;
    for(var i=0;i<rb.length-1;i++){
     if(rb[i].checked) { selezionato=true; break; }
    }
    if(!selezionato){
     alert("Selezionare un tipo di richiesta/prenotazione!");
     return false; 
    }
    return true;
    saluti

  3. #3
    ciao e grazie per risposta ...
    si così sembra funzionare ...

    ecco il codice:

    Codice PHP:
    var rb document.modulo.radio_tipo;
    selezionato false;

    else if (
    selezionato==false) {
            
            for(var 
    i=0;i<rb.length-1;i++){
                 if(
    rb[i].checked) { 
                
    selezionato=true
                break; 
                }
            }
            if(!
    selezionato){
                 
    alert("Selezionare un tipo di richiesta/prenotazione!");
                 return 
    false
            }
            return 
    true;
        }


    else {
        
    alert("ok")
               
    //document.modulo.action = "contatti_ok.asp";
               //document.modulo.submit();
            

    lui mi fa il controllo e mi mostra il messaggio nel caso non ci sia nessuna opzione selezionata ...se scelgo l'opzione radio però poi non mi va più avanti cioè non mi mostra l'alert "ok" :master:

  4. #4

  5. #5
    vi posto tutto il codice ...
    Codice PHP:
    <script language="javascript">
     <!--
    function 
    Moduloform() {
         var 
    form_nome document.modulo.form_nome.value;
         var 
    form_email document.modulo.form_email.value;
         var 
    arrivo document.modulo.date3.value;
         var 
    partenza document.modulo.date4.value;
         var 
    numeroadulti document.modulo.form_na.value;
         var 
    numerobambini document.modulo.form_nb.value;
         var 
    numerocamere document.modulo.form_numerocamere.value;
         var 
    campotesto document.modulo.campotesto.value;
         var 
    tiposcelta""
         
    var rb document.modulo.radio_tipo;
         
    selezionato false;
        
        
    // Espressione regolare dell'email
         
    var email_reg_exp = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
        
     
            
    //Effettua il controllo sul campo Nome
        
    if ((form_nome == "") || (form_nome == "undefined")) {
            
    alert("Il campo Nome è obbligatorio.");
            
    document.modulo.form_nome.focus();
            return 
    false;
        }
            
            
    //Effettua il controllo sul campo e-mail non obbligatorio
        
    else if  (form_email == "" || !email_reg_exp.test(form_email)) {
            
    alert("Inserire un indirizzo e-mail corretto.");
            
    document.modulo.form_email.select();
            return 
    false;
        }
            
            
    //controllo campo data checkin
        
    else if ((arrivo == "") || (arrivo == "undefined")) {
            
    alert("Inserire data Check-in!");
            
    document.modulo.date3.style.backgroundColor='#fbf77d'
            
    return false;
        }
            
            
    //controllo campo data checkin
        
    else if ((partenza == "") || (partenza == "undefined")) {
            
    alert("Inserire data Check-out!");
            
    document.modulo.date4.style.backgroundColor='#fbf77d'
            
    return false;
        }

        else if ((
    isNaN(numeroadulti)) || (numeroadulti == "") || (numeroadulti == "undefined")) {
               
    alert("Il campo numero adulti deve essere un numero - obbligatorio.");
               
    document.modulo.form_na.value "";
               
    document.modulo.form_na.focus();
               return 
    false;
        }
            
        else if (
    isNaN(numerobambini)) {
               
    alert("Il campo numero bambini deve contenere un numero!");
               
    document.modulo.form_nb.value "";
               
    document.modulo.form_nb.focus();
               return 
    false;
        }

        else if (
    isNaN(numerocamere)) {
               
    alert("Il campo numero camere deve contenere un numero!");
               
    document.modulo.form_numerocamere.value "";
               
    document.modulo.form_numerocamere.focus();
               return 
    false;
        }
        
        else if ((
    rb.length 0) && (selezionato==false)) {
            
            for(var 
    i=0;i<rb.length-1;i++){
                 if(
    rb[i].checked) { 
                    
    selezionato=true
                    break; 
                }
            }
            if(!
    selezionato){
                 
    alert("Selezionare un tipo di richiesta/prenotazione!");
                 return 
    false
            }
            return 
    true;
            
        }
        
        
        else if ((
    campotesto.indexOf("http://www.") != -|| campotesto.indexOf("www.") != -|| campotesto.indexOf("http://") != -|| campotesto.indexOf("[") != -1) ){
            
    alert("Filtro AntiSpam! \nIl Campo richiesta non può contenere indirizzi web o caratteri come []");
               
    document.modulo.campotesto.focus();
               return 
    false;
            }
            
            
            
    //INVIA IL MODULO
            
    else {
            
    alert("ok")
            
    //document.modulo.action = "contatti_ok.asp";
            //document.modulo.submit();
            
    }
    }
     
    //-->
    </script> 

  6. #6
    se vuoi controllare che sia selezionato un campo radio basta che controlli che il selectedindex del radio button sia diverso da -1

    codice:
    var rb = document.modulo.radio_tipo; 
    if(rb.SelectedIndex == -1)
       alert('campo non settato');
    else
       alert('campo settato');
    Ubuntu rulez!! :P

  7. #7
    ciao non ho mai utilizzato selectedindex cosa dovei inseire nel form .. ora ho questo codice:

    Codice PHP:
    <input type="radio" name="radio_tipo" value="00" />
    <
    input type="radio" name="radio_tipo" value="12" />
    <
    input type="radio" name="radio_tipo" value="13" />
    ecc... 

  8. #8
    il form va benissimo com'è ora, la proprietà selectedIndex indica l'identificativo degli elementi della radio quindi quando questo è uguale a -1 vuol dire che non è selezionato nessun elemento.

    Il codice che ti ho riportato sopra serve per il controllo, quindi al posto di questo

    Codice PHP:
        else if ((rb.length 0) && (selezionato==false)) {
            
            for(var 
    i=0;i<rb.length-1;i++){
                if(
    rb[i].checked) {
                    
    selezionato=true;
                    break;
                }
            }
            if(!
    selezionato){
                
    alert("Selezionare un tipo di richiesta/prenotazione!");
                return 
    false;
            }
            return 
    true;
            
        } 
    inserisci questo

    Codice PHP:
        else if(rb.SelectedIndex == -1) {
                
    alert("Selezionare un tipo di richiesta/prenotazione!");
                return 
    false;
            }
            return 
    true;
        } 
    Ubuntu rulez!! :P

  9. #9
    non funziona cioè non mi fa il controllo nonostante non sia selezionato nessun radio ... altra domanda per capire anche il valore value ... dovrò fare una cosa del genere?

    Codice PHP:
    else if (rb.SelectedIndex > -1) {
     for(var 
    i=0;i<rb.length-1;i++){
      if(
    rb[i].checked) { 
      
    valoreradio=rb[i].value;
      break; 
     }
    }

    se faccio cos' alert(rb.SelectedIndex) il risulatato è undefinited sia che sia selezionato o no un radio buttun...
    :master:

  10. #10
    non vorrei che tutti i vari if else che hai messo ti stiano fragando..

    prova a mettere il controllo sul radio separato dagli altri in un if assestante:

    Codice PHP:
    if(rb.SelectedIndex == -1) {
         
    alert("Selezionare un tipo di richiesta/prenotazione!");
         return 
    false;

    per accedere al valore del campo selezionato non ricordo se basta che aggiungi un .value così

    Codice PHP:
    rb.SelectedIndex.value
    o se devi fare così:

    Codice PHP:
    rb(rb.SelectedIndex).value
    Ubuntu rulez!! :P

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 © 2024 vBulletin Solutions, Inc. All rights reserved.