un probleme de validationde formulaire
Posté : 10 juin 2007, 13:10
bonjour a tous 
j expose :
j ai une verification de formulaire pour verifier la disponibilite d un pseudo
(j utilise la lib prototype)
et une verif sur le submit
donc mon probleme vient des return true et false sur la partie ajax.updater.
(la verif sur caractere fontctionne.)
dans la partie ajax.updater, j utilise deux fonction si succes ou echec,
si je mets return false( comme dans l exemple) impossible d envoyer le form
si je mets rien ou return true; le form est envoye meme si le pseudo est deja pris
donc comment je peux dire en js qu' il n y a rien a verifier dans cette partie mais qu le controle se fait uniquement sur succesRetourAjax et erreurRetourAjax.
p: j espere que c est clair !!!!!
j expose :
j ai une verification de formulaire pour verifier la disponibilite d un pseudo
(j utilise la lib prototype)
Code : Tout sélectionner
var imgPseudo = "";
function disponibilitePseudo (idImg)
{
var pseudoToTest = $('pseudo').value;
imgPseudo = idImg;
if (pseudoToTest != "")//SI PSEUDO N EST PAS VIDE
{
//inclure un verification au niveau des caracteres
if (pseudoToTest.length<5 || pseudoToTest.length>14)//SI PSEUDO EST COMPRIS ENTRE 5 ET 12 CARACTERES
{
Element.show("retourPseudo");
Element.update("retourPseudo","Votre Pseudo doit être compris entre 5 et 12 caracteres.");
$(idImg).src = '../images/mod/champNonValide.gif';
return false;
}
else // ok on verifie la dispo du pseudo
{
new Ajax.Updater(
'retourPseudo',
'module/log/verif.php?pseudo='+pseudoToTest+'&Date='+escape(new Date()),
{
method:'get' ,
onComplete: succesRetourAjax,
onFailure: erreurRetourAjax
}
)
;
return false;
}
}
else
{
Element.show("retourPseudo");
Element.update("retourPseudo","Vous devez choisir un pseudo.");
$(idImg).src = '../images/mod/champNonValide.gif';
return false;
}
function succesRetourAjax (t)
{
// alert(t.responseText);
if (t.responseText == "succes")
{
// Element.update("retourPseudo","Ce pseudo est disponible.");
$(imgPseudo).src = '../images/mod/champValide.gif';
Element.hide("retourPseudo");
return true;
}
else
{
Element.show("retourPseudo");
Element.update("retourPseudo","Désolé, ce pseudo n\'est pas disponible.");
$(imgPseudo).src = '../images/mod/champNonValide.gif';
return false;
}
}
function erreurRetourAjax (t)
{
// alert('Error ' + t.status + ' -- ' + t.statusText);
$(imgPseudo).src = '../images/mod/champNonValide.gif';
return false;
}
}
Code : Tout sélectionner
function checkForm()
{
return (disponibiliteEmail ('imgEmail') );
}
(la verif sur caractere fontctionne.)
dans la partie ajax.updater, j utilise deux fonction si succes ou echec,
si je mets return false( comme dans l exemple) impossible d envoyer le form
si je mets rien ou return true; le form est envoye meme si le pseudo est deja pris
donc comment je peux dire en js qu' il n y a rien a verifier dans cette partie mais qu le controle se fait uniquement sur succesRetourAjax et erreurRetourAjax.
p: j espere que c est clair !!!!!