Перейти к содержанию
Официальный форум поддержки Simpla

сохранить событие ajax фильтра


Рекомендуемые сообщения

Друзья, есть аякс фильтр. Повесил событие на фильтр чтоб раскрывался и скрывался  при клике на блок.

display:block 

<a hfef="" class="filter_hide_button hidden-xs hidden-sm">Показать фильтр</a>
<div class="filter_hide" style="overflow: hidden; display: block;">
</div>
         $(document).ready(function(){
    $(".filter_hide_button").click(function(){
        $(".filter_hide").slideToggle("slow");
        return false;
    });
});

 

После обновления фильтра акса событие сбрасывается и фильтр вообще не открывается.

 

 

в файле ajax filter  дописал 

 

	    $('div.filter_hide').live('click', function() {
        ajax_filter();
    });
	

Используется метод live. т.к. стоит старый js на сайте. Менять не вариант.

 

Ссылка на сообщение
Поделиться на другие сайты

-1

 

Не будет ведь работать из-за начальной точки в селекторе.

И неизвестно, сработает ли вообще on(), зависит от того, насколько "старый js на сайте".

Лучше всего было бы, если б ТС дал URL.

Ссылка на сообщение
Поделиться на другие сайты

-1

 

Не будет ведь работать из-за начальной точки в селекторе.

И неизвестно, сработает ли вообще on(), зависит от того, насколько "старый js на сайте".

Лучше всего было бы, если б ТС дал URL.

Лучше,но URL давать нынче не в моде.

Ссылка на сообщение
Поделиться на другие сайты

 

Я знаю, просто не хотел никого обидеть :)

Используйте метод live, он у вас уже работает.

Изменено пользователем Noxter
Ссылка на сообщение
Поделиться на другие сайты

 

$(document).on('click', '.div.filter_hide', function() {
   ajax_filter();
});

Попробуй так

не сохраняет событие при выбоер

 

    $('form#featur input[type="checkbox"]').live('click', function() {
        ajax_filter();
    });
    
    $('form#featur input[type="text"]').live('change', function() {
        ajax_filter();
    });
    $('div.pagination a').live('click', function() {
        ajax_filter($(this).data('page'));
        return false;
    });
    $('div.sort a').live('click', function() {
        ajax_filter('', $(this).data('sort'));
        return false;
    });
	

Сортировка и пагинация работают норм

 

а вот добавленное 

 

$(document).on('click', '.div.filter_hide', function() {
   ajax_filter();
});

не хочет

 

Используйте метод live, он у вас уже работает.

:) метод live я выше писал, не работает.

 

	    $('div.filter_hide').live('click', function() {
        ajax_filter();
    });
	

может тут ошибся?

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...