2017-09-08 4 views
1

私はしばらくの間これをやろうとしてきましたが、もう何をすべきかわかりません。私はOpenCartバージョン2.3.0.2を使用しています。何とかフィルターが正しく機能していません。OpenCartフィルター:古い選択をクリアする

初めてフィルターを選択しても問題ありません。しかし、2つのフィルタを削除して新しいフィルタを追加すると、古いフィルタはURLに残ります。

これは、URLにフィルタIDを追加します。

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

この1つは、フィルタIDをクリアします:

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

私はオフにして、新しいフィルタIDを追加するための最初のボタンを必要としています。

答えて

0

まず、クリアフィルタ方法が間違っているとおり:

$('#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='; 
}); 

おそらくフィルタの選択が残っている唯一の理由は、あなたの親form要素は何autocomplete="off"を持っていないということです。属性を追加してください。

0

リンクのクリックイベントの使用: -

それぞれクリック機能インサイド: - ?その答えのための

はwindow.location.hrefを追加=ページ= 1件の&商品名=このなど

0

感謝しかし、それは動作していません。

問題はまだあります。同上35

/index.php?route=product/category &パス= 59 &フィルタ= 35,36,31,32

及び36は、第1だった:URLを見て、その古いクエリを削除しません2つのフィットャ。その後、私はthooseを削除し、31と32を追加しますが、URLに残っています。

関連する問題