При таргетинге Iframe с формой открывается новое окно - PullRequest
3 голосов
/ 10 июня 2011

Я работаю в Chrome v. 12.

У меня есть вызов jquery, который создает iframe

$(document).ready(function(){

$('<iframe />').appendTo('body').attr({'id': 'iframeUploader', 'name':'iframeUploader'}).hide();
});

когда я использую форму для загрузки, Chrome открывает новое окно вместо целевого iframe

<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="upload.php?productID=1074" target="iframeUploader">

Кто-нибудь может заметить, что я делаю неправильно? Я выдергиваю волосы!

Спасибо!

Ответы [ 3 ]

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

Читайте здесь: http://terminalapp.net/submitting-a-form-with-target-set-to-a-script-generated-iframe-on-ie/ Действительно, после того, как я переключился на это:

 $('<iframe name="iframeUploader"/>').appendTo('body').attr({'id': 'iframeUploader'});

все заработало.Пробовал в IE8 и FF3.6

2 голосов
/ 07 мая 2012

Если вы статически устанавливаете атрибут формы target (т. Е. При создании самой формы и) и устанавливаете для него значение iframe, то ответ открывается в новой вкладке / окне.

Если вы установите динамический атрибут target непосредственно перед отправкой формы с помощью javascript / jQuery, то ответ будет получен в том же окне в целевой iframe.

0 голосов
/ 10 июня 2011

Атрибут form target позволяет разработчику нацеливать форму на именованное окно или фрейм - я не думаю, что вы можете настроить таргетинг на iframe таким способом - и не рекомендуется.

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