2009-01-02 30 views
0

J'ai une page html A et un lien dans la page qui ouvre la page B dans une nouvelle fenêtre. Comment recharger la page A en cliquant et en ouvrant ce lien?Forcer le rechargement d'une page html après une petite attente

EDIT:

j'aurais été plus clair. La page B s'ouvre dans une nouvelle fenêtre et non en tant que popup. Le lien hypertexte en question a son attribut cible défini sur _blank. Prenant un indice à partir des réponses que j'ai obtenues (merci les gars!), J'ai essayé de définir onclick = "window.location.reload()" et cela fonctionne parfaitement bien.

Cependant, j'ai un problème. En fait, une autre question tout à fait. Comment s'assurer que le rechargement de la page A attend jusqu'à ce que la page ouverte dans la nouvelle fenêtre (page B) se charge?

Répondre

1

La façon la plus simple serait de faire

<a href="# " onClick="window.open('newPage.htm','window','width=400,height=200')">link</a> 

Si je me souviens bien qui devrait ouvrir la fenêtre, puis depuis le retour n'a pas été suppresed rechargera charger la page.

1

Je ne suis pas exactement sûr si c'est ce que vous voulez en fonction de votre libellé, mais si vous voulez recharger la fenêtre d'ouverture d'un lien dans le menu contextuel essayez

self.opener.location.href = self.opener.location.href; 

Modifier, en fonction de vos nouveaux commentaires il suffit d'utiliser le code ci-dessus dans le corps onload de la nouvelle fenêtre

<body onload="self.opener.location.href = self.opener.location.href;"> 
3

Quelque chose comme ceci:

<a href="javascript:window.open('pageB.htm');window.location.reload();">open page b</a> 
0

Essayez ceci:

<script type="text/javascript"> 
function openPage(elem) { 
    function reloadCurrentPage() { 
     location.reload(); 
    } 

    var page = window.open(elem.href, '_blank'); 
    page.onload = function() { 
     reloadCurrentPage(); 
    } 

    if (/MSIE/.test(navigator.userAgent)) { // fix for IE 
     var timer = setInterval(function() { 
      if (page.document.readyState == 'complete') { 
       clearInterval(timer); 
       reloadCurrentPage(); 
      } 
     }, 100); 
    } 
} 
</script> 

<p><a href="second.html" onclick="openPage(this); return false;">second.html</a></p>