Skip to main content

Mise à jour de la quantité produit en fonction d'un champ perso

More
2 years 11 months ago - 2 years 11 months ago #355468 by nicolas
Bonjour,

Ok, je vois le problème.
Les deux dropdowns du haut sont des caractéristiques. Lorsque vous changez la variante sélectionnée avec, la zone du bouton d'ajout au panier et rafraîchie (en effet différentes variantes peuvent potentiellement avoir différent stocks, et donc pas le même affichage de la zone du bouton d'ajout au panier).
Pour gérer cela, il faut adapter le code:
Code:
<script> window.hikashop.emptyFields = function() { var button = document.queryElement('#hikashop_product_quantity_main button.hikacart'); if (button) { button.addEventListener('click', function() { var nomPrenomField = document.getElementById('nom_prenom'); var dateNaissanceField = document.getElementById('date_naissance'); var infosField = document.getElementById('infos'); if (nomPrenomField) { nomPrenomField.value = ''; } if (dateNaissanceField) { dateNaissanceField.value = ''; } if (infosField) { infosField.value = ''; } }); } } document.addEventListener('DOMContentLoaded', window.hikashop.emptyFields); window.Oby.registerAjax(['hkContentChanged'], function(params){ window.hikashop.emptyFields(); }); </script>
Last edit: 2 years 11 months ago by nicolas.

Please Log in or Create an account to join the conversation.

More
2 years 11 months ago #355474 by thefbi
Merci,
mais avec ce code, plus rien ne fonctionne au niveau du vidage des champs, même si je ne choisi rien...

“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde

Please Log in or Create an account to join the conversation.

More
2 years 11 months ago #355475 by thefbi
Bon, j'ai soumis notre problème à Chat GPT en lui fournissant les infos et les scripts et le problème rencontré.
Voici le script qu'il m'a généré et qui fonctionne. Merci de me dire si ça parait ok pour vous :
Code:
<script> window.hikashop = window.hikashop || {}; window.hikashop.emptyFields = function() { // Utiliser querySelector pour cibler le bouton de panier, quel que soit son ID var button = document.querySelector('#hikashop_product_quantity_main button.hikacart'); if (button) { button.removeEventListener('click', emptyFieldsAction); // Supprimer d'abord l'ancien écouteur d'événement button.addEventListener('click', emptyFieldsAction); // Ajouter le nouvel écouteur d'événement } } // Fonction qui vide les champs function emptyFieldsAction() { var nomPrenomField = document.getElementById('nom_prenom'); var dateNaissanceField = document.getElementById('date_naissance'); var infosField = document.getElementById('infos'); if (nomPrenomField) { nomPrenomField.value = ''; } if (dateNaissanceField) { dateNaissanceField.value = ''; } if (infosField) { infosField.value = ''; } } // Ajouter le code au chargement de la page document.addEventListener('DOMContentLoaded', window.hikashop.emptyFields); // Ré-enregistrer la fonction chaque fois que le contenu de Hikashop est modifié window.Oby.registerAjax(['hkContentChanged'], function(params){ window.hikashop.emptyFields(); }); </script>

“Si tu ne travaille pas pour tes rêves, quelqu'un t'embauchera pour travailler pour les siens" - Steeve Jobs
"La sagesse, c’est d’avoir des rêves suffisamment grands pour ne pas les perdre de vue quand on les poursuit." - Oscar Wilde

Please Log in or Create an account to join the conversation.

More
2 years 11 months ago #355482 by nicolas

Please Log in or Create an account to join the conversation.

Time to create page: 0.202 seconds
Powered by Kunena Forum