Bonjour.

J'ai une page aspx à partir de laquelle je lance une popup.

Cette page aspx est composée de deux parties : une partie A visible et une partie B invisible.

Mon but est : A partir de la popup, le clique sur un bouton entraine la fermeture de la popup et le retour à la page aspx avec changement de ses propriétés : la partie A devient invisible et la partie B devient visible.

Voici le code javascript que j'ai employé dans le button_click de la popup :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Response.Write("<body><script>window.opener.location.reload();</script></body>");
window.opener.document.getElementById('A').display='none';
window.opener.document.getElementById('B').display='block';
Response.Write("<body><script>window.close();</script></body>");
Ce code ne marche pas et j'obtient le message d'erreur suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
'window.opener.document.getElementById(...)' a la valeur Null ou n'est pas un objet.
On dirait qu'il n'a pas fini de reloader la page...!

Mais voilà ce qui est curieux : Si j'aoute une alerte juste après le reload, le traitement marche bien!

Je ne peux pas mettre une alerte dans mon traitement!

Savez vous pourquoi l'alerte permet le fonctionnement de mon code et comment le faire fonctionner correctement sans l'alerte ?

En vous remerciant.