Публикация междоменной формы с целью iframe в Chrome - PullRequest
0 голосов
/ 20 июля 2011

У меня есть форма для этих сообщений на скрытый iframe.URL-адрес действия формы находится в отдельном домене.Я вижу проблему в Chrome, когда форма отправляет сообщения, но данные формы не отправляются.

Вот настройка:

<form action="http://anotherdomain/save" method="post" target="myiframe" id="myform">
    <!-- standard form fields here -->
    <button type="submit">Submit</button>
</form>
<iframe src="about:blank" name="myiframe" style="display: none;"></iframe>

Если пользователь нажимает кнопку, форма публикуется какэто должно быть в iframe и все хорошо.Однако, если я введу jQuery Validation, в Chrome все перестает работать.У меня проверка выглядит следующим образом:

$("#myform").validate({
   // various options set here
   submitHandler: function(form) {
       form.submit();
       // stuff that should happen after the form submits
   }
});

В этом случае form.submit () заставляет форму отправляться без каких-либо данных, отправляются только заголовки.Длина содержимого всегда равна 0. Это происходит только в Chrome, Firefox, IE, Opera. Все отправляются нормально.

Что еще более странно, если у меня есть другая кнопка на странице, и я подключаю ее со следующим кодом, форма отправляется правильно.

$("myotherbutton").click(function() { $("#myform").submit(); }

Я в недоумении относительно того, почему Chrome ведет себя так, и есть ли обходной путь.Любая помощь будет оценена.

1 Ответ

0 голосов
/ 22 ноября 2011

Пожалуйста, игнорируйте этот вопрос. Это была не проблема с Chrome и обработчиками событий, а проблема, связанная с удалением элемента DOM перед вызовом события.

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