Je suis nouveau un jQuery. J'ai obtenu validate travailler avec ma forme avec ce (MVC 1.0/C#):jquery newbie: combiner valider avec hidding soumettre le bouton
<script type="text/javascript">
if (document.forms.length > 0) { document.forms[0].id = "PageForm"; document.forms[0].name = "PageForm"; }
$(document).ready(function() {
$("#PageForm").validate({
rules: {
SigP: { required: true }
},
messages: {
SigP: "<font color='red'><b>A Sig Value is required. </b></font>"
}
});
});
</script>
Je veux aussi cacher le bouton Soumettre pour prévenir le syndrome de la souris twitchy de provoquer l'entrée en double avant que le contrôleur se termine et réoriente (I utilise un pattern GPR). Les travaux suivants à cet effet:
<script type="text/javascript">
//
// prevent double-click on submit
//
jQuery('input[type=submit]').click(function() {
if (jQuery.data(this, 'clicked')) {
return false;
}
else {
jQuery.data(this, 'clicked', true);
return true;
}
});
</script>
Cependant, je ne peux pas faire fonctionner les deux ensemble. Plus précisément, si la validation échoue après avoir cliqué sur le bouton Soumettre (ce qui se produit étant donné le fonctionnement du formulaire), je ne peux pas renvoyer le formulaire à moins que j'effectue une actualisation du navigateur qui réinitialise la propriété 'clicked'.
Comment puis-je réécrire la deuxième méthode ci-dessus pour ne pas définir la propriété cliquée sauf si le formulaire est validé?
Thx.