Comparez les produits en utilisant une case à cocher
-
16-10-2019 - |
Question
Il semble trop lourd pour l'utilisateur d'avoir à attendre une page reload chaque fois qu'ils cliquent sur « ajouter à comparer » pour ajouter un produit à une liste comparer et je voulais changer thelink avec une case à cocher, puis ajoutez un bouton présentera la liste des produits à comparer et vous envoyer à cette page.
Quelle est la meilleure façon de le faire?
Edit:
Je vais poster le code je pour que quelqu'un d'autre ne peut l'utiliser dans l'avenir!
Dans chaque produit que j'ai une case à cocher comme ceci:
<input class="idcompare" type="checkbox" name="idcompare<?php echo $_product->getId();?>" value="<?php echo $_product->getId();?>">Compare
Alors j'ai ma forme avec le bouton qui me envoyer à la page comparer:
<form id="comparelist">
<button type="button" title="<?php echo $this->__('Compare') ?>" class="button"><span><span><?php echo $this->__('Compare') ?></span></span></button>
</form>
Et mes js qui changera l'action et soumettre le formulaire! (Je sais pas très élégant mais il fonctionne):
jQuery(document).ready(function() {
jQuery('#comparelist .button').click(function(){
var i=0;
var prdString="";
var prdString = jQuery.map(jQuery(':checkbox:checked'), function(n, i){
return n.value;
}).join(',');
var url='<?php echo Mage::getUrl('catalog/product_compare/index').'items/'; ?>'+ prdString + '/uenc/';
jQuery('#comparelist').attr('action', url);
jQuery('#comparelist').submit();
});
});
La solution
Pour ajouter un produit à vous comparer besoin de l'adresse suivante:
<?php echo Mage::getBaseUrl() ?>index.php/catalog/product_compare/index/items/' + productID + '/uenc/'
Vous pouvez ajouter plusieurs articles à comparer en même temps en créant une virgule chaîne du seperated
id de produit.Il ressemblerait à quelque chose comme ceci:
<?php echo Mage::getBaseUrl() ?>index.php/catalog/product_compare/index/items/10,23,456,8/uenc/'
Sur la base de cette information, vous pouvez le définir avec des cases à cocher en procédant comme suit:
- créer un
<form>
- créer des cases à cocher pour chaque élément que vous voulez être en mesure de comparer
- définir la
id
de chaque case de l'identifiant du produit - ajouter quelques js à l'événement onclick de la case à cocher qui ajoute le
id
à une virgule Séparées Sring -
onSubmit
ont leform action
aller ici:<?php echo Mage::getBaseUrl() ?>index.php/catalog/product_compare/index/items/' + prdString + '/uenc/'