Visualizzazione dei risultati da 1 a 6 su 6

Discussione: validazione radio

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    77

    validazione radio

    Ciao, voglio fare un controllo javascript che mi dia errore se nessun input radio è selezionato. Il numero di radio input è variabile perchè li crea da dei record di un database.

    Codice PHP:
    echo"<form name=\"paga\" action=\"conferma.php\" method=\"GET\" onsubmit=\"return controllo(nome.value, importo.value);\">";
            echo
    "<table class ='tabella'>";
            echo
    "<tr><th></th><th>Nome</th><th>Tipologia utente</th></tr>"
            while (
    $row mysqli_fetch_assoc($result1))
            {
                if(
    $row["negozio"]==1){
                    
    $neg="Negozio";
                }
                else{
                    
    $neg="Utente privato";
                }
                
    printf("<tr><td><input type=\"radio\" name=\"nome\"value=\"%s\"</td><td>%s</td><td>%s</td></tr> ",$row["nome"], $row["nome"], $neg);
                
                }
            echo
    "<tr><td colspan=\"3\">Importo* <input type=\"text\" name=\"importo\"> ";
            echo
    "<input type=\"submit\" value=\"Procedi\"></tr>";
            echo
    "</table>";
            echo
    "</form>"
    Ho provato a fare questo, ma non funziona

    Codice PHP:
    <script type="text/javascript">
            function 
    controllo(nomeimporto){
                var 
    radio_question false;
                for (
    counter 0counter nome.lengthcounter++) {
                        if (
    nome[counter].checked
                            
    radio_question true;
            }
                if (!
    radio_question) {
                        
    alert("Selezionare almeno un'opzione");
                        return (
    false);
                    }
                    return (
    true);
                }
            
    </script> 

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova cosi
    Codice PHP:
    echo"<form name=\"paga\" action=\"conferma.php\" method=\"GET\" onsubmit=\"return controllo();\">"
    codice:
    function controllo(){
    var nomi = document.paga.nome 
                var radio_question = 0; 
                for (counter = 0; counter < nomi.length; counter++) { 
                        if (nome[counter].checked)  
                            radio_question++; 
            } 
                if (radio_question<1) { 
                        alert("Selezionare almeno un'opzione"); 
                        return false; 
                    } 
                }
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    77
    Niente, non funziona

  4. #4
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    PHP:

    Codice PHP:
        echo"<form name=\"paga\" action=\"conferma.php\" method=\"GET\" onsubmit=\"return controllo(this);\">";
        echo
    "<table class ='tabella'>";
        echo
    "<tr><th></th><th>Nome</th><th>Tipologia utente</th></tr>"
        while (
    $row mysqli_fetch_assoc($result1))
        {
            if(
    $row["negozio"]==1){
            
    $neg="Negozio";
            }
            else{
            
    $neg="Utente privato";
            }
            
    printf("<tr><td><input type=\"radio\" name=\"nome\"value=\"%s\"</td><td>%s</td><td>%s</td></tr> ",$row["nome"], $row["nome"], $neg);
            
            }
        echo
    "<tr><td colspan=\"3\">Importo* <input type=\"text\" name=\"importo\"> ";
        echo
    "<input type=\"submit\" value=\"Procedi\"></tr>";
        echo
    "</table>";
        echo
    "</form>"
    JavaScript:

    codice:
    	function controllo (oForm) {
    
    		var nSelIdx = oForm.nome.length;
    
    		for (nSelIdx; nSelIdx > -1; nSelIdx--) {
    			if (oForm.nome[nSelIdx].checked) { break; }
    		}
    
    		if (nSelIdx === -1) {
    			alert("Selezionare almeno un\'opzione");
    			return false;
    		}
    
    		return true;
    
    	}
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    77
    Non funziona neanche questo...non capisco perchè

  6. #6
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Scusa, svista mia…

    codice:
    function controllo (oForm) {
    
    	for (var nSelIdx = oForm.nome.length - 1; nSelIdx > -1 && !oForm.nome[nSelIdx].checked; nSelIdx--);
    
    	if (nSelIdx === -1) {
    		alert("Selezionare almeno un'opzione");
    		return false;
    	}
    
    	return true;
    
    }
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

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