2017-09-08 6 views
1

J'ai essayé de faire cela pendant un moment mais je ne sais plus quoi faire. J'utilise OpenCart version 2.3.0.2. D'une certaine manière, le filtre ne fonctionne pas correctement.Filtre OpenCart: Effacer l'ancienne sélection

Première fois que je sélectionne les filtres c'est ok. Mais si j'enlève 2 filtres et en ajoute un nouveau, les anciens filtres resteront dans l'URL.

Cela ajoute l'identifiant de filtre URL:

$('#button-filter').on('click', function() { 
    filter = [];  
    $('input[name^=\'filter\']:checked').each(function(element) { 
     filter.push(this.value); 
    }); 
    location = '<?php echo $action; ?>&filter=' + filter.join(','); 
}); 

Celui-ci efface l'ID Filtres:

$('#button-filterclear').on('click', function() { 
    filter = []; 
    $('input[name^=\'filter\']:checked').each(function(element) { 
    filter.push(this.value); 
    }); 
    location = '<?php echo $action; ?>&filter='; 
}); 

J'ai besoin le premier bouton pour effacer, puis ajoutez le nouvel identifiant de filtres.

Répondre

0

En premier lieu, la méthode des filtres de compensation est erroné:

$('#button-filterclear').on('click', function() { 
    // NOT USED: filter = []; 
    // NOT USED: $('input[name^=\'filter\']:checked').each(function(element) { 
    // NOT USED:  filter.push(this.value); 
    // NOT USED: }); 
    location = '<?php echo $action; ?>&filter='; 
}); 

Probablement la seule raison pour laquelle la sélection des filtres reste est que votre élément parent form n'a pas autocomplete="off". Ajoutez l'attribut et ça devrait aller.

0

Utilisation sur événement, cliquez sur les liens: -

l'intérieur de chaque fonction de clic: -

Ajouter window.location.href = page = 1 = & productName ce etc

0

Merci pour la réponse mais ça ne marche pas.

Le problème est toujours là. Regardez l'URL, ce ne est pas question de supprimer l'ancien:

/index.php?route=product/category & path = 59 & filter = 35,36,31,32

Id 35 et 36 a été le premier deux fitler. Puis j'ai enlevé le thoose et ajouté 31 et 32 ​​mais le reste dans l'url.