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

    controllo su radio di un form

    Salve ho dei radio in un forma da selezionare e devo controllare se è stato selezionato almeno uno di questi radio ecco il code HTML:

    codice:
    <form name="effectacq" action="acq.php" method="post" onsubmit="return ctrcrl(this)">
    <input name="payment" type="radio" value="paypal" />
    <input name="payment" type="radio" value="bonifico" />
    <input name="payment" type="radio" value="contrassegno" />
    </form>
    Questo è il controllo in javascript che ho provato a fare:
    codice:
    	var errore=false;
    	
    	if(!theform.payment.checked){
    		errore=true;
    	}
    	
    	if(!theform.shipping.checked){
    		errore=true;
    	}
    	
    	if(errore==true){
    		alert("errore");
    		return false;
    	}
    	
    }
    ma non funge cioè se non selezione mi da l'errore ma se seleziono non mi fa andare avanti.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    if(!theform.payment[0].checked || !theform.payment[1].checked || !theform.payment[2].checked){
    		alert("errore seleziona un pagamento");
    return false;
    	}
    cosi almeno un radio payment deve essere spuntato
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    si lo fatto ma sai ora va sempre avanti anche senza aver selezioanto un radio.

    codice:
    function ctrlcrl(theform){
    	
    	var errore=false;
    	document.getElementById("errorform").innerHTML="";
    	
    	// contollo pagamento
    	var pagamento=theform.payment;
    	var np=0;
    	for(i=0;i<pagamento.length;i++){
    		if(pagamento[i].checked) np++;
    	}
    	if(np==0){
    		errore=true;
    		txterrpay="seleziona il metodo di pagamento";
    	}
    	
    	// controllo spedizione
    	var spedizione=theform.shipping;
    	var ns=0;
    	for(i=0;i<spedizione.length;i++){
    		if(spedizione[i].checked) ns++;
    	}
    	if(ns==0){
    		errore=true;
    		txterrspe="seleziona il metodo di spedizione";
    	}
    	
    	if(errore==true){
    		document.getElementById("errorformpay").innerHTML=txterrpay;
    		document.getElementById("errorformspe").innerHTML=txterrspe;
    		return false;
    	}
    	
    }
    sto verificando se ce un errore ma non lo vedo questo errore.

  4. #4
    ok risolto un problema c'era un errore ma da come vedi io devo fare 2 controlli uno per il pagamento e l'altro per la spedizione.

    Se entrambi non vengono selezionati mi compare l'errore, se invece viene selezionato uno dei due e l'altro no non mi compaiono l'errori. anche se il form non va avanti.

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.