@easycode
не боюсь задавать глупые вопросы ))

Ajax Form Submit в Framework7 — не работает как в документации, что не так?

Пытаюсь создать ajax-форму как это описано в: framework7.io/docs/form-ajax-submit.html, а именно:
<form id="feedback-form" class="ajax-submit" action="http://mysite/mFeedBack" method="POST">
<div class="content-block-title">Форма обратной связи</div>
<div class="list-block">
  <ul>
    <li>
      <div class="item-content">
        <div class="item-media"><i class="icon icon-form-name"></i></div>
        <div class="item-inner">
          <div class="item-title label"><label for="FeedBackForm_name" class="required">Имя <span class="required">*</span></label></div>
          <div class="item-input"> 
            <input name="FeedBackForm[name]" id="FeedBackForm_name" type="text">          </div>
        </div>
      </div>
    </li>
    .....
    .....
    .....
</div>
<div class="content-block">
    <input class="button active" type="submit" name="yt0" value="Отправить сообщение"></div>
</form>

В JavaScript у меня написано следующее:
$$('form.ajax-submit').on('submitted', function (e) {
  myApp.alert('Here goes alert text');
  var xhr = e.detail.xhr;
  var data = e.detail.data;
});


В итоге AJAX-запрос после нажатия submit-кнопки Отправить сообщение - уходит на сервер, а вот JavaScript-код не выполняется. Есть он или нет - он не работает.

Что не так делаю? Всё ведь по инструкции...
  • Вопрос задан
  • 516 просмотров
Решения вопроса 1
@easycode Автор вопроса
не боюсь задавать глупые вопросы ))
Проблема была в том, что событие submitted я регистрировал в общем листинге JacaScript'а, когда же форма моя грузилась по ссылке как view, посему надо было использовать регистрацию события в другом событии: onPageInit:

var myApp = new Framework7({
    modalTitle: 'MyApp',
    onPageInit: function (app, page) {
       if (page.name === 'site_feedback') {
            $$('form.ajax-submit').on('submitted', function (e) {
              var xhr = e.detail.xhr;
              var data = e.detail.data; 
              myApp.alert(data);
            });
        }
    }
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы