formulaire impossible à valider après requête ajax

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : formulaire impossible à valider après requête ajax

Re: formulaire impossible à valider après requête ajax

par tonio7788 » 14 sept. 2011, 11:32

Je pense y être parvenu :

onclick="document.forms['formulaire'].submit();"

formulaire impossible à valider après requête ajax

par tonio7788 » 14 sept. 2011, 07:54

Bonjour,

Voilà le topo:

un formulaire php, deux boutons submit, l'un pour afficher le prix, l'autre pour envoyer la réservation.

Sitôt que l'on affiche le prix, via une requête ajax qui envoie les variables du formulaire à un fichier php et affiche le prix sans recharger la page, le formulaire devient impossible à valider via le bouton "reservation".

le formulaire :

<script type="text/javascript" src="js/jquery-1.6.2.min.js"></script>

<script type="text/javascript" src="calcul.js"></script>

<form method="post" name="formulaire" id="formulaire_calcul" action="reception_cadre.php">
...
....
<input type="hidden" name="action" value="Calculer">
<input type="submit" onclick="return check()" value="Réserver" name="reserver">
<input type="submit" onclick="check2()" value="Voir le prix" name="submit">


// La Fonction de validation du formulaire

function check() {
var msg2 = "";

if (document.formulaire.adresse.checked==true && document.formulaire.ville.value=="")
{

msg2 += "Veuillez saisir une adresse de départ.\n";
}
...........


if (msg2 == "") return(true);

else {
alert(msg2);
return (false);
}
}


Le Fichier calcul.js appelle le fichier controleur.php qui lui renvoie le prix


function check2() {
$(document).ready(function() {
$("form#formulaire_calcul").submit(function() {
$.getJSON("controleur.php",
{"action" : "calculer",


"ville" : $("input#ville").val(),
"ar_ville" : $("input#ar_ville").val(),
.....
.........
},



function(data) {
$("input#prix").val(data['prix']);
$("input#resultat_multiplication").val(data['resultat_multiplication']);
}
);
return false;
});
});}


Le return(true); de la fonction check() n'est donc plus pris en compte une fois la fonction check2 lancée, comment faire pour parvenir à valider ce formulaire par n'importe quel moyen (php, ajax, javascript..?) J'ai parcouru google pendant plusieurs heures en vain, merci à celui qui pourra m'aider.