11545 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,

J'ai fait un formulaire de contact, et j'ai fait des tests sur les différents champs à remplir. J'ai donc une fonction qui me permet de vérifier un à un les champs, et qui permet de vérifier que l'adresse mail a une forme valide. Seulement, ma fonction ne marche plus (je ne me rappelle pas avoir changé quelque chose). J'ai regardé à l'aide de Firebug, mais il ne me met aucune erreur.

Je vous donne le code :


	<script type="text/javascript">


function verifSelection() {

	for(i=0;i<formmail.civilite.length;i++)
	{
		if(formmail.civilite[i].checked == true)
		{
		var civilite = 1;
		break;
		}
		else
		{
		var civilite = 0;
		}
	}
	if(civilite == 0)
	{alert("Veuillez choisir une civilité");
	return false;} 
		
	if (formmail.nom.value == "") {
		formmail.nom.style.backgroundColor = "#fba";	
		formmail.nom.focus()
		return false
	} 
	

	
	if (formmail.pays.value == "") {
		formmail.pays.style.backgroundColor = "#fba";
		formmail.pays.focus()
		return false
	}
	
	if (formmail.email.value == "") {
		formmail.email.style.backgroundColor = "#fba";	
		formmail.email.focus()
		return false
	}
	
	var verifPhoneFr = /^(01|02|03|04|05|06|08|09)[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;
    var verifPhoneInt = /^(\(\+[0-9]{2}\))[ \.\-]?[0-9][ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}[ \.\-]?[0-9]{2}$/;
    
    if ((verifPhoneFr.exec(document.getElementById('tel').value) == null)||(verifPhoneInt.exec(document.getElementById('tel').value) == null))
    {
      alert("Votre numéro de téléphone est incorrect" );
	  return false
	} 
	
	

invalidChars = " /:,;'"

	for (i=0; i<invalidChars.length; i++) { 
		badChar = invalidChars.charAt(i)

	if (formmail.email.value.indexOf(badChar,0) > -1) {
		formmail.email.style.backgroundColor = "#fba";
		alert("Veuillez saisir une adresse mail valide")
		formmail.email.focus()
		return false
	}
}

atPos = formmail.email.value.indexOf("@",1) 

	if (atPos == -1) {
		formmail.email.style.backgroundColor = "#fba";	
		alert("Veuillez saisir une adresse mail valide")
		formmail.email.focus()
		return false
	}

	if (formmail.email.value.indexOf("@",atPos+1) != -1) { 
		formmail.email.style.backgroundColor = "#fba";
		alert("Veuillez saisir une adresse mail valide")
		formmail.email.focus()
		return false
	}

periodPos = formmail.email.value.indexOf(".",atPos)

	if (periodPos == -1) {
		formmail.email.style.backgroundColor = "#fba";
		alert("Veuillez saisir une adresse mail valide")		
		formmail.email.focus()
		return false
	}

	if (periodPos+3 > formmail.email.value.length) { e
		formmail.email.style.backgroundColor = "#fba";
		alert("Veuillez saisir une adresse mail valide")
		formmail.email.focus()
		return false
	}
	
	if (formmail.question.value == "") {
		alert("Veuillez entrer un message")
		formmail.question.focus()
		return false
	}

return true;	
} 
</script> 


Et mon formulaire, où j'appelle la fonction en onsubmit :


<form name="formmail" method="POST" action="formmail.php" onsubmit="return verifSelection()">


Je vous remercie d'avance[/i]