2014-11-21 81 views
4

是否可以使用Javascript或JQuery从另一个页面刷新页面,而无需在新选项卡中打开同一页面。如何使用javascript刷新另一个页面而不打开新标签中的同一页面

JS:

var newtab = window.open('http://localhost:8081/app/home'); 
newtab.document.location.reload(true); 

我试过以上,但在这里,它会打开一个新标签,用相同的页面,该页面在浏览器已经打开。

请建议一种方法。

+0

你为什么要刷新外部页面? – DrRoach 2014-11-21 12:32:27

+0

我从一个Web应用程序运行两个Web应用程序,试图从第二个Web应用程序 – 2014-11-21 13:03:16

+0

@DrRoach刷新页面,因为这些“外部”页面实际上可能是* internal *,对于同一个应用程序相同的数据集,或同步用户工作流的窗口等 – 2018-03-04 14:34:57

回答

2

我从前面的Question得到了这个想法,在这里他们使用窗口对象引用来重新加载弹出窗口,但对于我来说它不会工作,因为父窗口和子窗口在2个不同的端口中运行。因此,使用同样的伎俩,我所做的是:

HTML:

<a onclick="openNewTab()">app2</a> 

<a onclick="refreshExistingTab">Refresh</a> 

JS:

<script> 

    var childWindow = ""; 
    var newTabUrl="http://localhost:8081/app/home"; 

    function openNewTab(){ 
     childWindow = window.open(newTabUrl); 
    } 

    function refreshExistingTab(){ 
     childWindow.location.href=newTabUrl; 
    } 

</script> 
+1

这是一个很好的方法。其中一个隐藏的好处是,你可以浏览该标签中的其他页面,并在点击一个新的锚点时仍然会刷新同一个标签:) – rich 2017-03-28 00:27:08

1

看看https://developer.mozilla.org/en-US/docs/Web/API/Window.open 基本上,如果你做window.open并指定一个窗口名称,它会用你提供的URL覆盖那个窗口。 因此,如果每次使用相同的窗口名称打开页面,则应在每次从其他页面再次执行时覆盖该页面。

+0

我引用这两个链接http://stackoverflow.com/questions/16853138/send-a-refresh-request-to-another-page-opened-in-浏览器 http://www.dynamicdrive.com/forums/showthread.php?42003-Refresh-one-page-from-another – 2014-11-21 12:40:59

+0

你能解释多一点,因为从这两个链接我得到不同的要求。 1讲1页打开另一页。 2谈到2页没有父/子关系的页面。你原来的问题暗示第1页打开第2页。它是哪一个?如果页面1打开页面2,则页面1可以通过执行我使用命名窗口初始化的内容或通过javascript(如发送的第一个链接)来刷新页面2。但是,由于您不必在第1页中保留对窗口对象的引用,因为命名窗口更强大,因为某些情况下可能会重新加载第1页。 – sagie 2014-11-21 12:45:47

+0

对不起,我真正想要的是在问题本身中进行了解释,即我想从另一页面刷新已在浏览器中打开的页面。可能吗? – 2014-11-21 12:57:53

相关问题