点击按钮时,AJAX产品过滤器会触发两次。
问题的原因是在点击按钮时,AJAX产品过滤会触发两次。解决方法是在代码的特定部分添加event.stopPropagation();
,并与event.preventDefault();
函数一起使用。
解决方法如下所示:
// 处理过滤请求 $('.wcapf-ajax-term-filter').not('.wcapf-price-filter-widget').on('click', 'li a', function(event) { event.preventDefault(); event.stopPropagation(); // 添加以解决问题! var element = $(this), filter_key = element.attr('data-key'), filter_val = element.attr('data-value'), enable_multiple_filter = element.attr('data-multiple-filter'); if (enable_multiple_filter == true) { wcapfMakeParameters(filter_key, filter_val); } else { wcapfSingleFilter(filter_key, filter_val); } });
以上就是解决此问题的原因和解决方法。