我已经尝试了一段时间,但我不知道该怎么做。我使用的是OpenCart 2.3.0.2版。不知何故,过滤器无法正常工作。
我第一次选择过滤器就可以了。但是,如果我删除2个过滤器并添加新过滤器,旧过滤器将保留在URL中。
这会将过滤器ID添加到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(',');
});
这个清除过滤器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 :(得分: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"
。添加属性,应该没问题。
答案 1 :(得分:0)
在链接上使用点击事件: -
在每个点击功能中: -
添加window.location.href =?page = 1&amp; productName = this etc
答案 2 :(得分:0)
感谢您的回答,但它无效。
问题仍然存在。观看网址,不删除旧查询:
/index.php?route=product/category&path=59&filter=35,36,31,32
Id 35和36是前两个fitler。然后我删除了thoose并添加了31和32,但遗留在网址中。