staf Posted December 2, 2019 Share Posted December 2, 2019 (edited) Bonjour à tous, J'ai un réussi à rendre obligatoire la sélection des déclinaisons sur la fiche produit qui fonctionne, mais sur la liste des produits, lorsque l'on visualise l'aperçu (modal) ça ne fonction pas... Presta 1.7 Voici le code dans le fichier custom.js: // Require Attribut document.addEventListener("DOMContentLoaded", function() { for (var index = 0; index < $('[id^=group_').length; index ++) { $('[id^=group_]').eq(index).val('0'); } if($('[id^=group_]').length) { $('.add-to-cart').first().prop('disabled', true); $('#quantity_wanted').prop('disabled', true); $('#product-availability').first().hide(); $('.product-reference').first().hide(); }else{ $('#quantity_wanted').prop('disabled', false); } }); function attrSelect(ev, thisElement) { for (var index = 0; index < $('[id^=group_').length; index ++) { if ($('[id^=group_').eq(index).find('option:selected').val() == '0') { $('.add-to-cart').first().prop('disabled', true); $('#quantity_wanted').prop('disabled', true); $('#product-availability').first().hide(); $('.product-reference').first().hide(); ev.preventDefault(); ev.stopPropagation(); break; }else{ $('#quantity_wanted').prop('disabled', false); } } } Merci de votre aide... Edited December 2, 2019 by staf (see edit history) Link to comment Share on other sites More sharing options...
lagui Posted December 2, 2019 Share Posted December 2, 2019 J'ai pas testé mais Il manque un truc là, à 3 reprises : $('[id^=group_') Link to comment Share on other sites More sharing options...
staf Posted December 3, 2019 Author Share Posted December 3, 2019 Merci de votre retour je vais chercher de ce côté. Link to comment Share on other sites More sharing options...
staf Posted December 3, 2019 Author Share Posted December 3, 2019 Après avoir corrigé suite à la remarque de lagui et merci de sa réponse. Cela fonctionne sur la page produit mais pas sur la liste des produits avec l'aperçu ou la déclinaison par défaut. Comme si le modal bloquait "DOMContentLoaded"... Link to comment Share on other sites More sharing options...
lagui Posted December 3, 2019 Share Posted December 3, 2019 Le contenu n'existe pas dans le Dom avant l'appel Ajax qui retourne l'aperçu : https://devdocs.prestashop.com/1.7/themes/reference/javascript-events/ https://api.jquery.com/on/ Link to comment Share on other sites More sharing options...
staf Posted December 3, 2019 Author Share Posted December 3, 2019 Merci Lagui un peu de lecture ça ne fait pas de mal... Maintenant je comprends pourquoi en aperçu ça ne fonctionne pas. Link to comment Share on other sites More sharing options...
Andriano Posted January 4, 2020 Share Posted January 4, 2020 Mettez le code JS directement sur le TPL du quick view Link to comment Share on other sites More sharing options...
staf Posted January 6, 2020 Author Share Posted January 6, 2020 Merci Andriano pour cette info, je vais le tester Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now