Ответ 1
Попробуйте следующее:
$('<iframe id="someId"/>').appendTo('#someDiv')
.contents().find('body').append(response);
Можно ли использовать jQuery для создания элемента <iframe>
и добавить к нему html-контент без указания атрибута src
?
Проблема в том, что мне нужно создать iframe
, и у меня уже есть его контент (я получаю его как ответ AJAX). К сожалению, я не могу указать URL-адрес, с которого я получаю ответ, с атрибутом src
. Я хотел бы сделать что-то вроде:
$('<iframe id="someId"/>').append(response).appendTo("#someDiv");
Попробуйте следующее:
$('<iframe id="someId"/>').appendTo('#someDiv')
.contents().find('body').append(response);
Зачем использовать iframe? Вставьте все это в другой контейнер. Я не могу придумать никаких преимуществ iframe, за исключением того, что вы можете загрузить страницу из атрибута src.
Я полагаю, что если вам нужен iframe для какой-либо другой цели, например, вы загружаете страницу, но хотите заменить ее на ответ ajax, вы можете использовать jQuery для замены iframe для div и обратно по мере необходимости.
Другая возможность заключается в том, что вместо ajax измените ваш ajax php script, чтобы вывести полную страницу, которую вы хотите в iframe. Затем используйте jQuery для изменения адреса запрашиваемой страницы в iframe с новыми параметрами для отображения обновленного контента.