Как внутри Pjax корректно вывести виджет, например, календарь?
На форме кнопка, при нажатии на неё с помощью pjax вместо кнопки выводится форма для заполнения.
На форме много полей ввода, в т.ч. виджет календаря. Виджет работает отлично, но если его поместить внутрь pjax - не работает.
Форма большая, используется редко, поэтому выводить её сразу (или рендерить и не отображать до нажатия на кнопку) нецелесообразно.
обработчик кнопки простой return $this->renderAjax('big_form');
Форма большая, используется редко, поэтому выводить её сразу (или рендерить и не отображать до нажатия на кнопку) нецелесообразно.
20kb ОЗУ экономим?
По теме:
Попробуйте инициализировать вручную js по событию успешного pjax. Видимо виджет ставит событие load а оно не срабатывает и не инициализируется скрипт.
не подскажете как лучше реализовать инициализацию?
экономия ОЗУ присутствут, но вторична, форма большая, для её построения дергается много справочников и данных (типа N последних событий), а необходима форма действительно крайне редко - нет смысла её генерировать каждый раз.
vnpp, не подскажете как лучше реализовать инициализацию?
Зависит от скрипта. Читайте про скрипт календаря в доках она точно есть. А по событиям pjax все есть тут: https://github.com/defunkt/jquery-pjax#events