防止在回发时重新加载 iframe
Posted
技术标签:
【中文标题】防止在回发时重新加载 iframe【英文标题】:Prevent Iframe reloading on post back 【发布时间】:2010-12-19 07:07:39 【问题描述】:我有一个带有一个 iframe 和一个按钮的网页。
在页面加载事件中,
if (!Page.IsPostBack)
string sDocUrl = //some doucmen url
Iframe1.Attributes["src"] = sDocUrl;
当页面重新加载(通过单击按钮)时,此 iframe 正在 也重装了。此 iframe 具有静态数据,不需要 每次单击按钮时都会重新加载。有没有办法防止 重新加载网络表单时要重新加载 iframe?
【问题讨论】:
【参考方案1】:您可以使用 javascript 动态添加 iframe:
if (!Page.IsPostBack)
$('#foo').append('<iframe src="' + sDocUrl + '"></iframe>');
使用 jQuery 将 iframe 添加到 id 为“foo”的元素。但它只会在 'if' 语句中的表达式返回 true 时添加 iframe。
【讨论】:
尽管再看你的问题,你似乎仍然希望 iframe 显示在回发上,对吧?如果是这样,那么@d 是正确的,没有办法阻止它重新加载。 谢谢,是的,你是对的,回邮后它也需要在那里。感谢您的帮助。【参考方案2】:当页面重新加载时,其中包含的任何 iframe(就像任何脚本、图像、任何东西一样)将始终重新加载。抱歉,没有办法解决这个问题,仅仅是因为整个页面实际上会重新加载。
【讨论】:
以上是关于防止在回发时重新加载 iframe的主要内容,如果未能解决你的问题,请参考以下文章
Gridview 中 TemplateField 中的复选框在回发时丢失