Задать вопрос
@surprise_motherfucker

Как исправить скрипт отправки формы для IE11?

Какая ошибка здесь присутствует? Почему этот скрипт не отрабатывает в IE11, при условии что не выдаёт ошибок. Обработчик рабочий, работает на нормальных браузерах. Спасибо заранее.
$(document).on("submit", "form", function () {
    var form = $(this);

    if (form[0].hasAttribute("not-ajax")) {
    } else {
      var gateway = "/local/ajax/form.php";
      var data = form.serialize();
      var xhr;

      if (xhr && xhr.readyState != 4) {
        xhr.abort();
      }

      xhr = $.ajax({
        type: "POST",
        url: gateway,
        data: data,
        success: function success(res) {
          if (res == "Y") {
            clearForm(form);
            popupClose();
            popupOpen("aplicpopup", "");
          } else {
            if (res == "step") {
              $from = $(".hero-services__form [name=FROM]").val();
              $to = $(".hero-services__form [name=TO]").val();
              $weight = $(".hero-services__form [name=WEIGHT]").val();
              $volume = $(".hero-services__form [name=VOLUME]").val();
              $width = $(".hero-services__form [name=WIDTH]").val();
              $length = $(".hero-services__form [name=LENGTH]").val();
              $height = $(".hero-services__form [name=HEIGHT]").val();

              if (!$volume && $width && $length && $height) {
                $volume =
                  parseFloat($width) *
                  parseFloat($length) *
                  parseFloat($height);
              }

              if (!$volume) {
                alert("Укажите объем или габариты!");
              } else {
                var _data = {
                  FROM: $from,
                  TO: $to,
                  WEIGHT: $weight,
                  VOLUME: $volume
                };
                $.ajax({
                  type: "POST",
                  url: "/local/ajax/calc.php",
                  dataType: "json",
                  data: _data,
                  success: function success(result) {
                    if (result.success === true) {
                      $(".popup-callback [name=FROM]").val($from);
                      $(".popup-callback [name=TO]").val($to);
                      $(".popup-callback [name=WEIGHT]").val($weight);
                      $(".popup-callback [name=VOLUME]").val($volume);
                      $(".popup-callback [name=WIDTH]").val($width);
                      $(".popup-callback [name=LENGTH]").val($length);
                      $(".popup-callback [name=HEIGHT]").val($height);

                      if (result.avia_price) {
                        $("#avia-sum").text(result.avia_price + " руб");
                        $("#avia-sum").parent().show();
                      } else {
                        $("#avia-sum").parent().hide();
                      }

                      if (result.zd_price) {
                        $("#gd-sum").text(result.zd_price + " руб");
                        $("#gd-sum").parent().show();
                      } else {
                        $("#gd-sum").parent().hide();
                      }

                      if (result.auto_price) {
                        $("#avto-sum").text(result.auto_price + " руб");
                        $("#avto-sum").parent().show();
                      } else {
                        $("#avto-sum").parent().hide();
                      }

                      clearForm(form);
                      inputDefault();
                      popupOpen("callback", "");
                    } else {
                      alert(result.message);
                    }
                  }
                });
              }
            } else {
              form.replaceWith(res);
              $(".phone").inputmask("+7(999) 999 9999", {
                clearIncomplete: true,
                clearMaskOnLostFocus: true
              });
            }
          }
        },
        error: function error(res) {
          console.log(res);
        }
      });
      return false;
    }
  });
  • Вопрос задан
  • 60 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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