2014-01-24 5 views
2

У меня есть две статические страницы от пользователя, который развернут на своих серверах. В настоящее время я звоню на их сервер из кода позади и загружаю их. Но теперь я не хочу делать код за вызовом. Вместо этого я хотел бы загрузить эти статические страницы в iframe. Ссылки (URL) на эти статические страницы хранятся в моем web.config. с помощью C# во время инициализации называют я копирую эти URL, в скрытых полях и назначая их ГКЗ фрейма, как показано ниже:Как загрузить веб-страницу в iframe

<script> 
    var bLoaded = false; 
    function LoadIframe1() { 
     if (!bLoaded) { 
      var iframe1 = document.getElemetById('iframe1'); 
      if (typeof (iframe1) != 'undefined' && iframe1 != null) { 
       iframe1.src = hiddenfield.value; 
       bLoaded = true; 
      } 
     } 
    } 
</script> 

<iframe id="iframe1" onload="Loadframe1();" /> 

Теперь проблема заключается в том случае, если файлы находятся в директории проекта, он работает нормально. но как я могу загрузить файлы, которые не находятся в каталоге решений?

+0

Статические страницы, размещенные на другом сервере, полностью прочитаны мной. – J0e3gan

+0

@ J0e3gan Ahhh, вы правы, он упоминает URL-адреса файла. Удалит мой комментарий – jammykam

+0

Вы проверили консоль в инструментах разработчика вашего браузера для возможной ошибки, которая препятствует отображению статических страниц? Вы можете столкнуться с ограничением 'SAMEORIGIN'. – J0e3gan

ответ

5

Почему вы используете JavaScript? Почему бы вам просто не установить src на рендеринг?

<iframe id="iframe1" src="<%= ExternalPageUrl %>" /> 

А в коде есть свойство, чтобы вернуть URL-адрес

protected String ExternalPageUrl 
{ 
    get 
    { 
     return "http://www.example.com/path/to/page-you-need.html"; 
    } 
} 
1

Трудно сказать наверняка, без дополнительной информации - например, ошибки, которые могут быть указаны в инструментах разработки вашего браузера, но вы можете столкнуться с SAMEORIGIN restriction.

Вот пример того, как Инструменты разработчика Chrome консоль будет сообщать об этом ...

Отказался, чтобы отобразить „https://stackoverflow.com/“ в кадре, потому что он установлен „X-Frame-Options“ на „SAMEORIGIN“ ,

... с 'http://stackoverflow.com' присвоено имя iframe1.src.

Независимо от того, используете ли вы код или JS, вы должны это учитывать.

См. related SO community wiki question & answers, чтобы узнать, как это сделать, что соответствует вашей ситуации.

Смежные вопросы