Comment soumettre le formulaire une seule fois après plusieurs clics sur Soumettre?
Je vais avoir des problème que quand je suis en train d'essayer de soumettre le formulaire en cliquant sur le bouton "soumettre" il faut un certain temps pour poster la demande au cours de ce si je suis à nouveau cliquer sur le bouton Soumettre, il sera de nouveau envoyer l'ensemble des paramètres et parametrs enregistrée deux fois, trois fois ....ainsi de suite.
Je ne sais pas comment faire pour limiter le le bouton "soumettre" afin que le formulaire ne devrait pas avoir soumis deux fois.
Je pense que quand je cliked sur "soumettre" je dois désactiver le bouton "soumettre" afin que l'utilisateur ne peut pas cliquer sur nouveau, est-ce une bonne approche pour faire cela?
source d'informationauteur Salil
Vous devez vous connecter pour publier un commentaire.
La désactivation de la touche est une solution, mais potentiellement pose un problème pour les utilisateurs du clavier qui vient de frapper enter pour soumettre un formulaire. Dans ce scénario, le bouton ne sera pas désactivée. Le sûr-le-feu de la méthode de la poignée de la
onsubmit
événement de la sorte:(bien, sûr-le-feu que vous pouvez obtenir avec JS activé de toute façon). Vous pourriez désactivé le bouton comme une confirmation visuelle à l'utilisateur final que le formulaire ne peut être soumis une fois de trop.
J'aime la simplicité et la franchise de Zoidberg réponse.
Mais si vous voulez brancher que gestionnaire à l'aide de code plutôt que de balisage (certaines personnes préfèrent garder le balisage et le code complètement séparés), ici c'est à l'aide de Prototype:
ou vous pouvez utiliser les fonctions anonymes (je ne suis pas un fan d'eux):
De le faire à l'aide de jQuery seront très semblables.
Si vous êtes à l'aide de Rails avec ujs, alors jetez un oeil à
disable_with
dans http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-submit_tagJe sais que c'est vieux, mais plutôt que de désactiver, juste cacher le bouton, vous ne pouvez pas cliquer sur ce que vous ne pouvez pas voir.
si vous utilisez le formulaire soumettre /post en PHP alors utiliser ce code
son code du bouton envoyer
Meilleure façon que j'ai trouvé que c'était mieux si toutes les informations sont correctes sur le formulaire, puis ajouter l'attribut le bouton soumettre. Au cas où les besoins de l'utilisateur pour le retour et remplissez le formulaire avec les informations correctes.