Еще один вопрос по фильтрам, не связанный с предыдущим.
Есть вьюха, в ней 2 раскрытых фильтра. Страница.
название товара - строка ввода
производитель - чекбоксы
тип товара - чекбоксы
Как сделать чтоб, при каждом вводе названия товара, все чекбоксы снимались?
Комментарии
Здравствуйте,
Пусть юзвер сам снимает.
Странные у вас вопросы последнее время
Кастомный js например в теме на событие change поля.
JS принимается. Условие ясно. А событие?
А метод ввода в настройках раскрытого фильтра это не с той области? Спрашиваю а не утверждаю.
.on('change'
$('.bef-checkboxes input:checked').prop('checked', false);
});
Если так, то чекбокс визуально выключается, но сброс фильтра не происходит. Какое действие должно быть?
Еслы под сбросом фильтра Вы подразмеваете изменение значений зависимых фильтром и контента, то надо делать .submit для формы с фильтрами.
Алексей, поясните плз.
.submit - это что?
Форма с чебоксами имеет код:
<form action="/test-search" method="get" id="views-exposed-form-termsearch-page-2" accept-charset="UTF-8">
Эту форму можно сабмитить JS-ом?
Если так, то не работает:
$('.bef-checkboxes input:checked').prop('checked', false);
$('#views-exposed-form-termsearch-page-2').submit();
});
Я так понимаю что между снятием галочек и отправкой формы, должен быть сброс этой формы. А можно ли сделать сброс формы на JS?
У better exposed filters есть настройка, отправлять autosubmit на изменение фильтров, просто Вы не поставили галочку в настройках и не сделала после установки значения на элементе .trigger('change
"отправлять autosubmit на изменение фильтров" - галка Автоматическая отправка - включена, это оно?
trigger('change') - поставил, тогда
$('.bef-checkboxes input:checked').prop('checked', false);
$('#views-exposed-form-termsearch-page-1-mefibs-form-search').trigger('change');
$('#views-exposed-form-termsearch-page-1-mefibs-form-search').submit();
});
Чекбоксы снимаются, форма отправляется.
Но в поле ввода текста остается тот текст, который был до изменения. Т.е. форма не подхватывает измение текста.
Может событие по сабмиту формы делать, а не по изменению текста в фильтре?
Проверяйте в console браузера что и где меняется ?!
Думаю мне знаний не хватает. Буду теорию штудировать.
Насколько вообще возможно на JS менять значение переменных и отправлять форму? Где-то есть теория не эту тему?
- Значения через js меняются в DOM нормально
- Форма отправляется тоже без проблем например .submit