Formulaire javascript
Dark_Casimir
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Dark_Casimir -
Dark_Casimir -
Bonjour,
Je suis étudiant en IUT et j'ai un petit soucis avec un formulaire que je dois réaliser en html avec du javascript.
Je voudrais contrôler qu'aucun champs ne soit vide, donc voici ma fonction :
function vide(form1){
if(document.form1.nom.value == ""){
alert("Merci de renseigner le champs !");
document.forms["form1"].elements["nom"].focus();
return false;
}
if(document.form1.prénom.value == ""){
alert("Merci de renseigner le champs !");
document.forms["form1"].elements["prénom"].focus();
return false;
}
return true;
}
Et voici les champs concernés pour le moment :
<p> <label> Nom : <input type="text" name="nom" id="nom" onblur="vide(form1);"></label></p>
<p> <label> Prénom : <input type="text" name="prénom" id="prénom" onblur="vide(form1);"></label></p>
Je veux également vérifier que dans ces deux champs, l'utilisateur n'aie pas rentré de nombre. J'ai essayé ceci :
function checknom(form1){
var str = document.form1.nom.value;
for(var i=0; i<str.length; i++){
if(isNaN(str[i]){
alert("Vous avez tapé un nombre !");
return false;
}
} return true;
}
Le soucis c'est que lorsque j'essaye ça, ma fonction vide(form1) ne fonctionne plus. Et puis je doute qu'il faille faire ça pour contrôler la présence de nombre dans mes champs "nom" et "prénom"
Merci d'avance pour vos réponses.
Je suis étudiant en IUT et j'ai un petit soucis avec un formulaire que je dois réaliser en html avec du javascript.
Je voudrais contrôler qu'aucun champs ne soit vide, donc voici ma fonction :
function vide(form1){
if(document.form1.nom.value == ""){
alert("Merci de renseigner le champs !");
document.forms["form1"].elements["nom"].focus();
return false;
}
if(document.form1.prénom.value == ""){
alert("Merci de renseigner le champs !");
document.forms["form1"].elements["prénom"].focus();
return false;
}
return true;
}
Et voici les champs concernés pour le moment :
<p> <label> Nom : <input type="text" name="nom" id="nom" onblur="vide(form1);"></label></p>
<p> <label> Prénom : <input type="text" name="prénom" id="prénom" onblur="vide(form1);"></label></p>
Je veux également vérifier que dans ces deux champs, l'utilisateur n'aie pas rentré de nombre. J'ai essayé ceci :
function checknom(form1){
var str = document.form1.nom.value;
for(var i=0; i<str.length; i++){
if(isNaN(str[i]){
alert("Vous avez tapé un nombre !");
return false;
}
} return true;
}
Le soucis c'est que lorsque j'essaye ça, ma fonction vide(form1) ne fonctionne plus. Et puis je doute qu'il faille faire ça pour contrôler la présence de nombre dans mes champs "nom" et "prénom"
Merci d'avance pour vos réponses.
A voir également:
- Formulaire javascript
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Telecharger javascript - Télécharger - Langages
- Formulaire de contact le bon coin introuvable ✓ - Forum Réseaux sociaux
4 réponses
Perso, je ferai un typeof(str)=='Number' plus rapide et bien sur penser au difference entre 12 - 12.00 - 12,00 car je suis pas sur que le type of soit le meme.
perso je regarderai du côté des expressions régulières Regex en javascript
tu fais une Regex new RegExp("[0-9]", "g"); et tu testes si tu trouves dans le champ
vas voir le site:
https://openclassrooms.com/fr/courses/5543061-ecrivez-du-javascript-pour-le-web?archived-source=1916641
ou ce site de test en ligne: http://quentinc.net/testeur-expressions-regulieres
ensuite ta méthode de test n'est pas bonne onBlur pour lancer la verif vide, si l'utilisateur ne clique pas sur le champ ça n'appellera pas la fonction.
il vaut mieux:
<form name="form1" action="..." method="post" onsubmit="return vide('form1');">
qui lancera la fonction a l'envoi du formulaire et empêchera son envoi en cas de return false
tu fais une Regex new RegExp("[0-9]", "g"); et tu testes si tu trouves dans le champ
vas voir le site:
https://openclassrooms.com/fr/courses/5543061-ecrivez-du-javascript-pour-le-web?archived-source=1916641
ou ce site de test en ligne: http://quentinc.net/testeur-expressions-regulieres
ensuite ta méthode de test n'est pas bonne onBlur pour lancer la verif vide, si l'utilisateur ne clique pas sur le champ ça n'appellera pas la fonction.
il vaut mieux:
<form name="form1" action="..." method="post" onsubmit="return vide('form1');">
qui lancera la fonction a l'envoi du formulaire et empêchera son envoi en cas de return false