Форма автризации в модале после обновления. Есть решение

Доброго времени суток после обновления авторизации, сталкнулся с проблемой вывода формы авторизации в модале. Раньше забирал таким образом .load(auth_url + ' #page', data, function () {})

Теперь вместо формы html с класcом js-wa-form-item, нашёл обработчик в файле abstractForm.js

Но никак не могу разобраться как забирать форму вместе с обработчиком или какой скрипт нужно подключить?

Может кто уже сталкивался?

6 ответов

  • 2
    enso_studio@mail.ru 5 декабря 2018 00:16 # Решение
    $('.login-link').on('click', function (e) {
        e.preventDefault();
        $.get(
            $(this).attr('href'),
            function (response) {
                var $modal = $('#modal');
                $('.content', $modal).html($(response).find('#page'));
                $modal.show();
            }
        );
    });

  • 2
    enso_studio@mail.ru 4 декабря 2018 23:55 #

    Никаких проблем не возникло если бы выучили мат.часть - Раздел "Script Execution"

  • 2
    Дмитрий Павлов 6 декабря 2018 17:39 #

    Использование фрагментированнуй загрузки через .load вырезает весь javascript в этом фрагменте. В будущем лучше воздержаться в своих темах от такого приема. Используйте более явный и ручной подход, как в примере от Виктора Филинова выше

  • 1
    YourWebShop 4 декабря 2018 14:21 #

    Проблема актуальна, клиенты обновили движок, а шаблоны с .load в модальных окнах перестали работать.

    Еще интересно, почему форму авторизации сделали в <div></div>, а не в <form></form>, популярный шаблон smart цеплял именно ее.

    • +2
      Дмитрий Елшин Дмитрий Елшин Webasyst 6 декабря 2018 17:27 #

      Обновлённая форма авторизации обёрнута в div, чтобы её можно было встраивать в другие формы.

      Пример: чекаут в Shop-Script 7.

  • 0
    FPM 4 декабря 2018 14:25 #

    Я решения так и не нашёл пробовал подключать те-же js, что и на странице авторизации/регистрации, вышел из положения выводом форм в шаблон и js по условиям показывать/скрывать. 

  • 0
    FPM 5 декабря 2018 11:52 #

    Добрый день. Возможно не верно описал ситуацию. Форму то забрать можно 

    .append(loading).load('/login/ #page', data, function () {}

    Раньше приходила форма и по сабмиту она сериализовалась и отправлялась на экшин самой  формы. По ответу производиись нужные действия.


    Сейчас же приходит не форма и вместо экшина html атрибут data-action, а качестве обработчика по сабмиту используется метод initSubmit объекта WaLoginAbstractForm

    К сожалению не успел разобраться где и по какому событию вызывается этот метод. 


Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите