добавить контент в iframe - PullRequest
1 голос
/ 07 апреля 2011

Я отображаю страницу внутри iframe. Ниже приведена разметка:

<iframe src="/home/index" width="700px" height="300px"/>

Теперь, используя jquery, я пытаюсь добавить содержимое другой страницы в этот iframe:

 $('iframe').bind('load',function()
{

$('iframe).contents().find('body').load('/user/profile');
});

Содержимое страницы (пользователь / профиль) отображается за исключением файлов javascript, т. Е. Заголовок раздела страницы 'user / profile' содержит ссылку на файлы javascript, такие как jquery.js, profile.js и т. Д. Я проверил содержимое iframe в firebug.нет ссылки на эти файлы JS.Пожалуйста, помогите.

Ответы [ 2 ]

0 голосов
/ 07 апреля 2011

Это не сработает, потому что вы помещаете элемент head в тело, а не как работает HTML.

Вы могли бы сделать

$('iframe').contents().find('html').load('/user/profile');

вместо ....

EDIT:

Одинокий день делает очень хорошую мысль. Почему бы просто не изменить src iframes?

$('iframe').attr('src', '/user/profile');
0 голосов
/ 07 апреля 2011

Когда jQuery добавляет контент, содержащий теги script, эти теги удаляются. Код внутри них выполняется без вставки в DOM. Это сделано потому, что Internet Explorer иногда ломается, когда вы пытаетесь это сделать.

Более того, вы спрашиваете, почему вы не получаете содержимое элемента head в /user/profile, добавляемое к body страницы iframe. Вы действительно удивлены тем, что это не работает так, как вы ожидаете?

Поскольку вы заменяете весь контент iframe, почему бы не изменить страницу, на которую он указывает? Я не могу понять, почему вы делаете это с Javascript.

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