2
  • 我有一个带有 iframe 的 jsp 页面。

例如:worklist.jsp

 <html>
 <head>
 <body>
 <iframe height="15%" marginheight="0px" marginwidth="0px" scrolling="no" src="menuBanner.jsp" style="border:0; padding: 0px; position:absolute;" width="960px">
</iframe>
<div><button data-dojo-type="dijit.form.Button" value="Reload" id="reload"  onclick="reload();">Reload</button></div>
</body></head></html>
  • 单击一个按钮,我只需要重新加载 iframe 页面。
  • 我尝试了以下脚本,但它重新加载了整个页面(worklist.jsp)

函数重载(){ location.reload();}

4

4 回答 4

3

您可以通过将 src 设置为当前 src 来更新/刷新 iframe。

这是一个例子。

var test = document.getElementById('iframeId');
test.src = iframe.src;

这种方式适用于跨域。如果 iFrame 位于同一个域中,则评论中的示例就不那么骇人听闻了。

于 2013-02-28T09:30:47.710 回答
2
function reload( {
  document.getElementById('iFrameID').contentDocument.location.reload(true);
}
于 2013-02-28T09:32:06.033 回答
1

你可以试试:

var iframe = document.getElementById('YourIFrameId');
iframe.src = iframe.src + '?c=' + Math.random(); 

我认为如果不更改 src 属性,您将无法重新加载 iframe。

于 2013-02-28T09:35:39.193 回答
0

你可以这样做。获取 iframe src 并再次分配给 iframe 的 src

<script>
function test()
  {
    $('#subpage_frame').attr('src',$('#subpage_frame').attr('src')) ;
  }
</script>

<iframe src="test.com" onload="Loaded();" id="subpage_frame"></iframe>

<button onclick="test();">Refresh button</button>
于 2013-02-28T09:47:49.770 回答