IFrame не загружает новую страницу с изменяющимся значением src - PullRequest
1 голос
/ 01 апреля 2012

Я использую IFrame для загрузки страниц с моей главной страницы. Иногда первые 2-3 страницы загружаются нормально, когда я указываю источник при нажатии ссылки, используя:

var frame = $('#mainFrame')[0];
frame.src='/directory/example.aspx';

Я также пытался использовать атрибут jQuery:

$('#mainFrame').attr('src','/directory/example.aspx');

Я тестировал в Firebug атрибут src изменяется, но когда я проверяю следующее:

frame.content.document.location.href

показывает другое местоположение, чем указано с помощью тега src.

Пожалуйста, предложите какое-нибудь средство, поскольку эта проблема задерживает всю мою работу: (

Ответы [ 2 ]

0 голосов
/ 02 апреля 2012

Ребята, мне пришлось сегодня снова с этим бороться.Кажется, две вещи (приводящие к одному и тому же эффекту) приводили к неправильной работе IFrame.

1) Мы используем элементы управления Telerik ASP.Net AJAX.Мои коллеги вызывали функцию на главной странице приложения, чтобы переместить ее на следующую или предыдущую страницу, например:

top.moveNext();
return false;

или

top.movePrevious();
return false;

, но они вызывали их в RADButton 's OnClientClicked обработчик событий.Я изменил его так, чтобы он вызывался в обработчике OnClientClicking, и отменил событие следующим образом:

function onNextClicking(s,a){
    a.set_cancel(true);//stops event from propogating
    top.moveNext();
}

Это позволило ему корректно работать со страницами, имеющими RADButton s.

2) На некоторыхстраницы мы использовали простые button элементы.Там они тоже возвращали false после вызова методов из окна top.Мы изменили эти кнопки на RADButtons и обрабатываем шаги в обработчиках OnClientClicking.Хотя кажется странным, что функция внутри страницы, уже загруженной в IFrame, заставляет ее прекратить загрузку нового URL, если она возвращает false.

0 голосов
/ 02 апреля 2012

Я бы создал функцию javascript, которая устанавливает свойство innerHTML для div на основе стиля AHAX XMLHTTPRequest. Начиная с IE 5 и Netscape 4.7 дней, у меня все еще плохие воспоминания о Iframes, и я избегаю их любой ценой, хотя я слышал, что проблемы теперь исправлены ..

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