Ошибки AjaxForm Новый

Дополнение: AjaxForm 1.1.7-pl

Не отправляет письма и не выводит сообщения AjaxForm Формаl
В логе не дает ошибок, а в консоли skrinshoter.ru/s/250916/44teYH
default.js:39 Uncaught SyntaxError: missing ) after argument list
contact.html:341 Uncaught ReferenceError: AjaxForm is not defined
Как исправить?
Содержание вызова формы
[[!AjaxForm?
    &snippet=`FormIt`
    &hooks=`email`
    &form=`FormContact`
    &emailSubject=`Письмо с сайта olgashalashova.ru`
    &emailFrom=`no-reply@olgashalashova.ru`
    &emailTo=`kalisto74@yandex.ru`
    &emailTpl=`emailContactTpl`
    &validate=`name:minLength=^2^,email:required,phone:required,message:minLength=^10^`
    &validationErrorMessage=`Пожалуйста, заполните поля помеченные *`
    &successMessage=`Сообщение успешно отправлено, наш менеджер свяжется с Вами в ближайшее время`
]]

Чанк FormContact
<form action="[[~[[*id]]]]" method="post" class="ajax_form wow fadeInUp" data-wow-delay="0.6s">
  <div class="col-md-4 col-sm-6">
    <input type="text" id="af_name" name="name" value="[[+fi.name]]" placeholder="Имя" class="form-control" required/>
    <span class="error_name">[[+fi.error.name]]</span>
  </div>
  <div class="col-md-4 col-sm-6">
		<input type="email" id="af_email" class="form-control" value="[[+fi.email]]" placeholder="Email" name="email" required>
		  <span class="error_email">[[+fi.error.email]]</span>
	</div>
	<div class="col-md-4 col-sm-12">
		<input type="text" id="af_phone" class="form-control" value="[[+fi.phone]]" placeholder="Телефон" name="phone" required>
		  <span class="error_phone">[[+fi.error.phone]]</span>
	</div>
	<div class="col-md-12 col-sm-12">
		<textarea id="af_message" class="form-control" placeholder="Ваш вопрос или сообщение" rows="7" name="message" required>[[+fi.message]]</textarea>
		<span class="error_message">[[+fi.error.message]]</span>
	</div>
	<div class="col-md-offset-2 col-md-8 col-sm-offset-2 col-sm-8">
		<button type="submit" class="btn btn-primary">ОТПРАВИТЬ</button>
	</div>
  [[+fi.success:is=`1`:then=`
  <div class="alert alert-success">[[+fi.successMessage]]</div>
  `]]
  [[+fi.validation_error:is=`1`:then=`
  <div class="alert alert-danger">[[+fi.validation_error_message]]</div>
  `]]
</form>
Чанк emailContactTpl
<h3>Сообщение</h3>
<p>От кого: [[+name]]</p>
<p>E-mail: [[+email]]</p>
<p>Телефон: [[+phone]]</p>
<p>Сообщение: [[+message]]</p>
25 сентября 2016, 16:26    kalisto   
0    869 0

Комментарии (16)

  1. Александр 25 сентября 2016, 20:20 # 0
    Очевидно, что проблема в синтаксической ошибке js скрипта.
    Что у Вас в файле default.js на 39 строке?
    Оттого и переменная AjaxForm is not defined (не определена).
    1. kalisto 25 сентября 2016, 21:13 # 0
      Переустановила AjaxForm ошибки ушли из консоли (я там пробовала менять согласно одной инструкции — но не помогло), но сообщений и отправка почты не происходит. На сервере по тех-м причинам не могут дать доступ к логу ошибки.
      Как исправить?
      1. Александр 25 сентября 2016, 22:32 # 0
        у Вас в консоли 2 ошибки, обе пропали?
        1. Александр 25 сентября 2016, 22:49 # 0


          При нажатии на кнопку — несрабатывает скрипт, повешанный на функцию ajaxSubmit.

          Во всяком случае браузер жалуется на ссылку:
          1. Александр 25 сентября 2016, 22:53 # +1
            <script type="text/javascript">
            if(typeof jQuery == "undefined"){
            	document.write('<script type="text/javascript" src="//yandex.st/jquery/2.1.1/jquery.min.js" ></'+'script>');
            }
            
            if(typeof ymaps == "undefined"){
            	//document.write('<script type="text/javascript" src="//api-maps.yandex.ru/2.1/?lang=ru_RU" ></'+'script>');
            	document.write('<script type="text/javascript" src="//api-maps.yandex.ru/2.1/?lang=ru_RU&load=Map,Placemark,GeoObjectCollection,map.addon.balloon,geoObject.addon.balloon,package.controls,templateLayoutFactory,overlay.html.Placemark" ></'+'script>');
            }
            </script>
            Попробуйте запустить страницу, удалив этот фрагмент кода (подключение api карт)
            1. kalisto 26 сентября 2016, 00:54 # 0
              Александр!
              Спасибо, что подсказываете, удалила и сам модуль и его подключение.
              Ошибки все равно остались те же.
              skrinshoter.ru/s/250916/nnbQRo
              Нужно было ли настраивать Системные настройки & События->почту ???http://skrinshoter.ru/s/250916/D3C3z7
              1. kalisto 26 сентября 2016, 01:06 # 0
        2. kalisto 26 сентября 2016, 01:09 # 0
          Ошибки в консоле
          initialize @ default.js:4
          (anonymous function) @ contact.html:192
          default.js:4
          skrinshoter.ru/s/250916/i7Ym8S
          contact.html:192
          <script type="text/javascript">AjaxForm.initialize({"assetsUrl":"\/assets\/components\/ajaxform\/","actionUrl":"\/assets\/components\/ajaxform\/action.php","closeMessage":"\u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435","formSelector":"form.ajax_form","pageId":11});</script>
          
          1. kalisto 26 сентября 2016, 03:47 # 0
            Обновился formit 2.2.11-pl
            Письма отправляются, но сообщения не выводит об успешной отправке — как исправить?
            и как исправить наличие * при вводе полей required
            1. Александр 26 сентября 2016, 16:36 # +1
              у Вас jquery вроде тоже сторонний, с яндекса. Попробуйте поставить библиотеку jquery локально.
              У меня хром жаловался на недоступность библиотеки у яндекса.
              1. kalisto 26 сентября 2016, 18:44 # 0
                Александр! jQuery v1.11.1 у меня в библиотеке минимизирован через gulp
                1. Александр 26 сентября 2016, 18:51 # +1
                  Если сейчас все отправляется, но без уведомлений (всплывающих окон), проблема также в скриптах, т.к. у Василия в этом модуле jQuery.jGrowl стоит, который отвечает за уведомления. Отправляете заявку и смотрите в консоль. + ответ от сервера в network вкладке хрома консоли разработчика
            2. kalisto 26 сентября 2016, 18:45 # 0
              Я убирала yandexmap модуль и его подключение. Cейчас ошибок в консоле нет.
              Но при отправке выдает ошибку на
              default.js:16 Uncaught TypeError: $(...).ajaxSubmit is not a function(anonymous function) @ default.js:16 - $(this).ajaxSubmit({
              dispatch @ jquery.min.js:3
              r.handle @ jquery.min.js:3
              Сообщения не выводятся все равно, но письма отправляются на почту. Что можно сделать?
              1. kalisto 26 сентября 2016, 19:07 # 0
                Убрала снова yandexmap
                Все ошибки идут на строку подключения js AjaxForm из-за чего это может быть?
                <script type="text/javascript">AjaxForm.initialize({"assetsUrl":"\/assets\/components\/ajaxform\/","actionUrl":"\/assets\/components\/ajaxform\/action.php","closeMessage":"\u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u0435","formSelector":"form.ajax_form","pageId":11});</script>
                default.js:4 if (!jQuery().ajaxForm) { 
                1. kalisto 26 сентября 2016, 20:48 # +1
                  Спасибо Вам Александр!
                  Ошибка исправлена тем, что js AjaxForm подключался выше чем jquery. Не могла поймать ошибку так, как в чанке подключение jquery стояло выше чем подключение остальных скриптов а по факту наооборот.
                  1. Александр 27 сентября 2016, 07:19 # 0
                    рад за Вас =)
                  Вы должны авторизоваться, чтобы оставлять комментарии.