Probléme submit par Javascript
needles
-
siniko44 Messages postés 172 Date d'inscription Statut Membre Dernière intervention -
siniko44 Messages postés 172 Date d'inscription Statut Membre Dernière intervention -
Salut, je ne comprends pas ce qui ne vas pas dans mon script de vérification d'un formulaire + envoi en POST vers traitement php, voici le code:
Le js:
Et l'envoi, les infos du formulaire, il me semblait qu'on pouvait indiquer la page de redirection directement en js ainsi que la méthode(post ou get) mais je n'ai plus mon vieux code:
ps:bizarre dans la liste des post je voit qu'il y a une réponse mais elle ne s'affiche pas.. pb de latence pe etre....
Le js:
<script type="text/javascript"> function verifierMail (champ) { var str = champ.value; var regexp = new RegExp("^[a-zA-Z0-9_\\-\\.]{3,}@[a-zA-Z0-9\\-_]{2,}\\.[a-zA-Z]{2,4}$", "g"); if (!regexp.test(str)) { alert("L'adresse e-mail n'est pas valide !"); champ.focus(); return false; } return true; } function controle(){ var msg=""; if(document.formulaire.nom.value=='' || !isNan(document.formulaire.nom.value)) { msg+='-Veuillez indiquer votre nom'; } if(document.formulaire.prenom.value=='' || !isNan(document.formulaire.prenom.value)){ msg+='-Veuillez indiquer votre prénom'; } if(document.formulaire.courriel.value=='' || !verifierMail(document.formulaire.courriel.value)){ msg+="-Veuillez indiquer un email valide"; } if(document.formulaire.demande.value==''){ msg+="-Veuillez préciser votre demande"; } if(msg==""){ document.formulaire.submit(); }else{ alert(msg); } alert(msg); } </script> <head>
Et l'envoi, les infos du formulaire, il me semblait qu'on pouvait indiquer la page de redirection directement en js ainsi que la méthode(post ou get) mais je n'ai plus mon vieux code:
<form id="formulaire" METHOD="POST" ACTION="envoiformulaire.php"> <table class="form"> <!---...puis --> <input onClick="controle()" class="btenvoi" type="button" value="Envoyer" />
ps:bizarre dans la liste des post je voit qu'il y a une réponse mais elle ne s'affiche pas.. pb de latence pe etre....
A voir également:
- Probléme submit par Javascript
- Telecharger javascript - Télécharger - Langages
- A javascript error occurred in the main process - Forum Handicap / Accessibilté
- Erreur #125 javascript - Forum Mozilla Firefox
- Afficher un tableau javascript en html ✓ - Forum Javascript
- Javascript arrondi - Forum Javascript
5 réponses
<input type="button" value="Envoyer" onclick="envoiformulaire.php'">
essaye çà a la fin de ta page HTML, mais je suis pas certain de ma réponse
@dsjl Ah non t'y est pas là ^^.
Enfait Needles, je voit pas comment tu as pu en arrivé la sans ça.
"document.getElementById('objet')","document.getElementsByName('objet')", etc. c'est la base du javascript. Ce sont des constantes qui permettent d'identifier l'objet désigné.
Tu peux pas écrire "document.formulaire.nom.value" en Javascript, sa veut rien dire.
Si tu veux désigné le formulaire, tu fait "document.getElementById('formulaire')". Entre autre, il va chercher l'objet à partir de son attribut "Id".
Et comme j'm'emmerde pas mal au boulot et que j'suis de bonne humeur, j'vais meme corriger ton code.
Enfait Needles, je voit pas comment tu as pu en arrivé la sans ça.
"document.getElementById('objet')","document.getElementsByName('objet')", etc. c'est la base du javascript. Ce sont des constantes qui permettent d'identifier l'objet désigné.
Tu peux pas écrire "document.formulaire.nom.value" en Javascript, sa veut rien dire.
Si tu veux désigné le formulaire, tu fait "document.getElementById('formulaire')". Entre autre, il va chercher l'objet à partir de son attribut "Id".
Et comme j'm'emmerde pas mal au boulot et que j'suis de bonne humeur, j'vais meme corriger ton code.
function controle(){ var msg=""; if(document.getElementById('nom').value=='' || !isNan(document.getElementById('nom').value)) { msg+='-Veuillez indiquer votre nom'; } if(document.getElementById('prenom').value=='' || !isNan(document.getElementById('prenom').value)){ msg+='-Veuillez indiquer votre prénom'; } if(document.getElementById('courriel').value=='' || !verifierMail(document.getElementById('courriel').value)){ msg+="-Veuillez indiquer un email valide"; } if(document.getElementById('demande').value==''){ msg+="-Veuillez préciser votre demande"; } if(msg==""){ document.getElementById('formulaire').submit(); }else{ alert(msg); } alert(msg); // ? }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ah oui merci le DOM je connait, je vais essayer de rajouter le getElement, ceci dit le DOM il sert pour changer des attributs(setAttibutes) ou le contenu d'une balise (innerHTML)et on peut très bien sélectionner un élément sans le getElement du moment que la hiérarchie est respectée(des noeuds ou alors je confonds )...
Bref le problème me vient d'ailleurs(je vais quand même essayer en rajouter du DOM) puisque ma boîte de message(alert) ne s'affiche pas...
ps: exempel sans avoir à recourir au DOM
document.write("coucou");
Pas besoin de getElementById/Name et on cible bien une élément spécifique, c'est la base de la syntaxe objet.
edit dernière modif..marche pas non plus :
function controle(){
var msg="";
if(document.getElementById('nom').value=='' || !isNan(document.getElementById('nom').value))
{
msg+='-Veuillez indiquer votre nom';
}
if(document.getElementById('prenom').value=='' || !isNan(document.getElementById('prenom').value)){
msg+='-Veuillez indiquer votre prénom';
}
if(document.getElementById('courriel').value=='' || !verifierMail(document.getElementById('courriel').value)){
msg+="-Veuillez indiquer un email valide";
}
if(document.getElementById('demande').value==''){
msg+="-Veuillez préciser votre demande";
}
if(msg==""){
alert("YAAAh"+msg);*/
document.getElementById('formulaire').submit();
}else{
alert(msg);
}
}
Rien ne se passe, si je vires mes if de vérification je suit bien redirigé ...
une idée? Merci
Bref le problème me vient d'ailleurs(je vais quand même essayer en rajouter du DOM) puisque ma boîte de message(alert) ne s'affiche pas...
ps: exempel sans avoir à recourir au DOM
document.write("coucou");
Pas besoin de getElementById/Name et on cible bien une élément spécifique, c'est la base de la syntaxe objet.
edit dernière modif..marche pas non plus :
function controle(){
var msg="";
if(document.getElementById('nom').value=='' || !isNan(document.getElementById('nom').value))
{
msg+='-Veuillez indiquer votre nom';
}
if(document.getElementById('prenom').value=='' || !isNan(document.getElementById('prenom').value)){
msg+='-Veuillez indiquer votre prénom';
}
if(document.getElementById('courriel').value=='' || !verifierMail(document.getElementById('courriel').value)){
msg+="-Veuillez indiquer un email valide";
}
if(document.getElementById('demande').value==''){
msg+="-Veuillez préciser votre demande";
}
if(msg==""){
alert("YAAAh"+msg);*/
document.getElementById('formulaire').submit();
}else{
alert(msg);
}
}
Rien ne se passe, si je vires mes if de vérification je suit bien redirigé ...
une idée? Merci