JQuery пост с сериализацией IE выпуск - PullRequest
0 голосов
/ 04 мая 2011
var jqxhr = $.post(url, $("#saveShipAdrs").serialize(), function(response) {
      // set form values to view
      var fld;
      $('#editShipAdrs input[name*="Livraison"]').each(function(){ 
          fld = "#show"+$(this).attr("name");
          $(fld).html($(this).val());
      });
      // set success message
      $(".success").html("Shipping address updated");
    })
    .error(function(xhr, ajaxOptions, thrownError) {
         $(".error").html("Shipping address cannot be updated");
         alert(xhr.status+"\n"+xhr.statusText+"\n"+thrownError);
    });
 });

Здесь «saveShipAdrs» - это идентификатор формы.

Этот код отлично работает в FF, но не в IE. в IE это дает

xhr.status = 0
xhr.statusText = error
thrownError = Invalid Argument

Я пытался найти serializeArray и пытался найти другие похожие вопросы, но не нашел решения.

Ответы [ 2 ]

0 голосов
/ 22 октября 2013

В jquery есть ошибка в IE 10 (стандартный режим / режим совместимости), из-за которой .serialize () и .serizlizeArray () не могут сериализовать данные формы.

<div id="showRole">
<form>
<input name="roleName" type="text" />
<input name="des" type="text" />
</form>
</div>

Исправление: var data= $ ("# showRole input"). serialize ();используйте идентификатор div для ссылки на форму и сериализации данных.

IE просто меняет дерево DOM, и jquery не может получить элементы.

0 голосов
/ 27 июля 2011

Dr.Molle предложил, статус 0 возвращается, когда запрос отменен из-за другого домена.

Здесь проблема заключалась в том, что я оставил атрибут действия тега формы пустым для отправки на себя (action = "").

Это не означает, что домен отличается, но когда я помещаю URL-адрес текущей страницы в атрибут действия, проблема устраняется.

Если кто-то захочет подробно объяснить, что именно является проблемой пустого действия, это будет оценено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...