Bonjour
Je reprend mon problème d'Iframe dont je vous ai parlé ces derniers jours. J'ai une iframe contenue dans une page aspx. Je voudrais détecter quand la page contenue dans l'iframe change d'url. Pour cela je compte utiliser l'évènement onload.

J'ai actuellement ce code qui fonctionne :

Fichier aspx :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<iframe src="www.google.fr" id="aa" runat="server" height="785" width="503" />
Code behind :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
protected void Page_Load(object sender, EventArgs e)
{
   aa.Attributes.Add("onload", "javascript:Toto();");
}
Ma méthode Toto() est bien appelée à chaque fois que je change de page dans l'iframe. Toutefois, je souhaite appeler une méthode qui se trouve dans mon code behind. J'ai donc mis en place le code suivant :

Aspx :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
<iframe src="www.google.fr" id="aa" runat="server" height="785" width="503" onload="Alerte" />
Code behind :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
        protected void Page_Load(object sender, EventArgs e)
        {
        }
 
        public void Alerte(object sender, EventArgs e)
        {
            // mon traitement...
        }
Mon problème est que la méthode Alerte() est appelée la première fois que je charge toute la page, mais dès que je change de page dans mon iframe je ne rentre plus dans ma méthode

Quelqu'un aurait-il une idée? Javascript et C# gèrent-ils différemment les évènements?

Merci.