mFilter2 Вывод результатов на отдельной странице
Добрый день!
Собираюсь приобрести mSearch2.
Из этого дополнения мне нужен только mFilter2, но у меня есть задача, чтобы результаты работы фильтра выводились на отдельной странице. Здесь, вероятно, нужно повесить событие на кнопку и запускать сам фильтр только по нажатию этой кнопки. Я еще немного чайник, поэтому если ткнете носом в строку кода, буду весьма благодабря!
От самого фильтра я в восторге, примеры впечатляют, да и minishop2 для меня более чем достаточен.
Возможно ли это?
Подскажите, как это можно реализовать в minishop2… может быть использовать сторонние дополнения?
Собираюсь приобрести mSearch2.
Из этого дополнения мне нужен только mFilter2, но у меня есть задача, чтобы результаты работы фильтра выводились на отдельной странице. Здесь, вероятно, нужно повесить событие на кнопку и запускать сам фильтр только по нажатию этой кнопки. Я еще немного чайник, поэтому если ткнете носом в строку кода, буду весьма благодабря!
От самого фильтра я в восторге, примеры впечатляют, да и minishop2 для меня более чем достаточен.
Возможно ли это?
Подскажите, как это можно реализовать в minishop2… может быть использовать сторонние дополнения?
Комментарии: 8
Я делал, так, что при нажатии на кнопку копируется строка юрл, оттуда вырезается гет запрос, а потом происходит с тем же гет запросом переходя на другую страницу, где вызван мфилтр. Мб есть вариант более красивый, но не залезая в исходники другого не придумал
Григорий, не могли бы вы показать сам код? (я пока еще чайник и сходу сделать не получилось)
Можно в личку.
Заранее огромное благодабря
Можно в личку.
Заранее огромное благодабря
К кнопке класс добавить .no-ajax
var getUrlGetString = function () {
return decodeURIComponent(window.location.search.substring(1))
}
var getUrlParameter = function getUrlParameter(sParam) {
var sPageURL = decodeURIComponent(window.location.search.substring(1)),
sURLVariables = sPageURL.split('&'),
sParameterName,
i;
for (i = 0; i < sURLVariables.length; i++) {
sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] === sParam) {
return sParameterName[1] === undefined ? true : sParameterName[1];
}
}
};
$(".no-ajax").on("click", function (e) {
if ($.preventDefaultEvent(e)) return;
var form = $(this).parents('form:first');
var url = $(form).prop("action");
window.location.replace(url + "?" + getUrlGetString());
});
Ссылка на action формы — ссылка на страницу куда переводить
Спасибо!
У кого не работает код, удалите строчку
if ($.preventDefaultEvent(e)) return;
Ещё можно использовать параметр:
&filterOptions=`{"autoLoad":0}`
Тогда в форме по умолчанию появится кнопка «Отправить» и нужно будет нажимать на неё. Соответственно в action формы поставить адрес страницы для результатов.
Но при этом не работает показ предварительных результатов.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.