C# 如何在iframe中加载网页
我有两个静态页面,来自一个部署在服务器上的用户。目前,我正在从代码隐藏处调用他们的服务器并加载它们。但现在我不想打暗号。相反,我希望在iframe中加载这些静态页面。指向这些静态页面的链接(URL)存储在my web.config中。在init调用期间,我使用C#复制隐藏字段中的URL,并将其分配给iframe的src,如下所示:C# 如何在iframe中加载网页,c#,javascript,jquery,html,iframe,C#,Javascript,Jquery,Html,Iframe,我有两个静态页面,来自一个部署在服务器上的用户。目前,我正在从代码隐藏处调用他们的服务器并加载它们。但现在我不想打暗号。相反,我希望在iframe中加载这些静态页面。指向这些静态页面的链接(URL)存储在my web.config中。在init调用期间,我使用C#复制隐藏字段中的URL,并将其分配给iframe的src,如下所示: <script> var bLoaded = false; function LoadIframe1() { if (!b
<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();" />
var bLoaded=假;
函数LoadIframe1(){
如果(!bLoaded){
var iframe1=document.getElemetById('iframe1');
if(typeof(iframe1)!=“未定义”&&iframe1!=null){
iframe1.src=hiddenfield.value;
bLoaded=真;
}
}
}
现在的问题是,如果文件在项目的目录中,它就可以正常工作。但是如何加载不在解决方案目录中的文件呢?为什么要使用JavaScript?为什么不在渲染时设置
src
<iframe id="iframe1" src="<%= ExternalPageUrl %>" />
如果没有更多的信息,很难确定——例如,浏览器开发工具中可能报告的错误,但您可能会遇到错误 下面是一个Chrome开发者工具控制台如何报告它的示例 拒绝在帧中显示“”,因为它将“X-frame-Options”设置为“SAMEORIGIN” …带有
'http://stackoverflow.com“
分配给iframe1.src
不管你使用的是代码后面还是JS,你都需要考虑这个问题。
有关如何进行此操作的想法,请参阅。我阅读了此问题后,讨论中的静态页面由另一台服务器托管。@J0e3gan Ahhh,你说得对,他提到了文件的URL。是否会删除我的评论您是否已检查浏览器的开发人员工具中的控制台是否存在阻止显示静态页面的可能错误?您可能会遇到一个
SAMEORIGIN
restriction.BTW,onload=“LoadIframe1();”
而不是onload=“Loadframe1();”
。
protected String ExternalPageUrl
{
get
{
return "http://www.example.com/path/to/page-you-need.html";
}
}