Jump to content

Empêcher le double-clic sur "ajouter au panier" en lien <a>


Recommended Posts

Bonjour,

Le module Blockcart prévoit de désactiver le bouton d'ajout au panier quand celui-ci vient d'être cliqué en y ajoutant l'attribut HTML "disabled", dans le but d'éviter le double-clic qui ajouterait deux fois le même produit au panier.

//disabled the button when adding to do not double add if user double click
       if (addedFromProductPage)
       {
           $('body#product p#add_to_cart input').attr('disabled', 'disabled').removeClass('exclusive').addClass('exclusive_disabled');
           $('.filled').removeClass('filled');
       }
       else
           $('.ajax_add_to_cart_button').attr('disabled', 'disabled');


Ci-dessus, le code concerné dans ajax-cart.js.

Or, l'attribut "disabled" s'applique en principe aux éléments de formulaire, il me semble, et pas aux éléments liens "". C'est pourtant ce qui est prévu dans le code ci-dessus (la partie après "else"). En tous cas, cette méthode ne permet pas d'empêcher le double clic sur un bouton d'ajout au panier sous forme de lien, comme c'est le cas dans les listes de produits, par exemple.

Ma question : puis-je modifier le fichier ajax-cart.js de façon à plutôt associer une classe au lien une fois qu'il est cliqué, plutôt qu'un attribut HTML inutile ? Une classe permettrait de passer le lien en "display: none", par exemple. En outre, il serait intéressant que cette classe ne s'applique qu'au lien cliqué, à la différence de la méthode originale, qui applique l'attribut "disabled" à tous les éléments d'ajout au panier de la page...

Si de nobles âmes avaient un embryon de solution, je les en remercie par avance.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...