11496 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Dans le code plus bas j'ai de la difficulté à déterminer mes bonnes variables afin de faire fonctionner mon formulaire je vous épargne le css

Html:

ici j'appelle ma feuille de script:

<script src="script/myform.js" type="application/javascript"></script>

Code dans html:

   
<form action="" onsubmit="return valider(this);" name="">
      
<fieldset>
        <legend>Coordonnées</legend>
          <div class="Information">
              <label for="province"> Province : </label><input type="text" id="province" name="province"placeholder="Province"><br><br>
              <label for="codepostal"> Code postal: </label><input type="text" id="codepostal"name="codepostal" placeholder="X9X9X9"><br><br>
              <label for="nodetel"> Téléphone : </label><input type="text" id="nodetel" name="tel" placeholder="123-456-7890"><br><br>
              <button type="submit">Envoyer</button>
          </div>
          <br>
          <div id="messageerreur"></div>

</fieldset>
</form>


javascript dans myform.js:

// JavaScript Document

function valider(frm){

          var uncodepostal = frm.codepostal.value;
	
	message = "";
	
         if (frm.province.value == ""){
		message += "Vous devez inscrire votre province <br>";
	}
	if (frm.codepostal.value == "" || isvalide(funcodepostal) == false){
		message += "Vous devez entrer un code postal valide <br>";
	}
	
	if (message != ""){
		document.getElementById("messageerreur").innerHTML = message; 
	}
	else{
		document.getElementById("messageerreur").innerHTML = "Vous pouvez maintenant remplir la section suivante!"; 
	}

	return false;	
}

function isvalid(uncodepostal){
	
	var regEx = /[a-zA-Z][0-9][a-zA-Z][0-9][a-zA-Z][0-9]/;
	
	if (regEx.test(uncodepostal))
	{
	return true;
	}
	else
	{
	return false;
	}
}
mes fonction de si province ou le reste fonctionne mais pas le code postal

delsol
Bonjour,

Alors si tu cherche à vérifier un code postal français, ton regEx n'est pas bon il n'y a jamais eu de lettre dans un code postale en france!

var codepostal =/^(([0-8][0-9])|(9[0-5]))[0-9]{3}$/;


ce serait plus adéquat Smiley biggrin
Bon jour,

en fait j'en suis à mes premières armes à programmer un formaulaire les exercice que j'avais fait était d'appeler des fonctions et de faire des boucles...

d
bonjour,

je vais essayer le lien un peu plus tard aujourd'hui.

Ma difficulté est de savoir qui nommer où:

HTML j'ai appeleé ma div form avec un type action on submit valider(this)

dans myform.js j'ai une fonction valider(frm) je comprend que cela va chercher les données de mon formulaire htm maintenant au bout de cette déclaration il y a name="" qu'est-ce que je dois faire avec ça?

donc tant et aussi longtemps que je n'essaie pas les formules de validation de code postal mon programme fonctionne. Je viens juste de terminer les notions d'algorithme.

ECRIRE "Veuillez entrer votre code postal selon le format A0A0A0"
	LIRE codepostal
		TANT QUE !(estCodePostalValide (codepostal)) FAIRE
			ECRIRE "Ceci n'est pas un code postal valide, veuillez l'entrer à nouveau selon le format A0A0A0"
			LIRE codepostal
		FIN TANT QUE

FONCTION estCodePostalValide (CARACTERE uncodepostal)  

DEBUT
	BOOLEEN resultat
	resultat = FAUX		
	
    SI estUneLettre (extraire (uncodepostal, 0, 1)) ET estUnNombre (extraire (uncodepostal, 1, 1)) ET estUneLettre (extraire (uncodepostal, 2, 1)) ET estUnNombre (extraire (uncodepostal, 3, 1)) ET estUneLettre (extraire (uncodepostal, 4, 1)) ET estUnNombre   (extraire (uncodepostal, 5, 1)) ALORS
		resultat = vrai
	FIN SI
	RETOURNER resultat
FIN	



Ma question est qui appeler quand. Au début de ma fonction valider(frm) est-ce que je dois déclarer une variable en tant que codepostal pour suivre un peu le schéma de pensée du pseudo code parce que si frm.codepostal.value == "" ça fonctionne. mais j'ai aussi besoin de savoir que si l'utilisateur entre qqc ça doit être sous la forme X9X9X9

Delsol