<FORM> публикация на <IFRAME>вызывает всплывающее окно только в IE7 - PullRequest
2 голосов
/ 03 июня 2011

Я создаю iframe и форму с помощью jQuery следующим образом:

iframe = $("<iframe>", {name : "foo"});
form = $("<form>", {
  target : $iframe.attr("name"),
  action : "/foobar",
  method : "POST"
}).append($("<input>", {
  type  : "submit",
  name  : "amifully",
  value : "dressed"
}).hide());
$("body").append(iframe).append(form);
form.submit();

По какой-то причине в Chrome / Safari / Firefox / IE8 + он отлично работает, но в IE7 он открывает форму в виде попокно вверх.

Кто-нибудь имеет представление о том, что происходит?

1 Ответ

6 голосов
/ 03 июня 2011

Ааа! Я понял! По сути, IE7 выходит из себя, когда вы пытаетесь добавить name атрибуты к элементам с помощью jQuery ... вы должны создать имя в необработанной строке следующим образом:

iframe = $("<iframe name=\"foo\">");

Это была такая тонкая вещь! Надеюсь, что это поможет не дать кому-то еще потратить 5 часов на поиски ответа в Интернете.

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