[ Foro de C# ]

Usar funcion JS en webbrowser C#

26-Feb-2015 15:02
Federico Meneguzzi
1 Respuestas

Buenos dias!
Estoy teniendo problemas para desloguearme de una pagina.
La cosa es así, tengo un webbrowser(webbrowser1) que esta navegando una pagina, la cual pide usuario, me logueo con un usuario, saco una información de la pagina y necesito desloguearme para poder usarla con otro usuario y hacer lo mismo.

El problema se me presenta cuando tengo que desloguearme, si le doy inspeccionar elemento al link de cerrar sesión me da este resultado
<a href="javascript: closeChildWindowsAndLogout();" style="color: white;">Cerrar sesión</a>

Quisiera saber como puedo hacer para utilizar esa funcion.
Probe de la siguiente manera, pero no lo pude lograr.

HtmlElementCollection CodigoHTML =webBrowser1.Document.GetElementsByTagName("a");

foreach (HtmlElement LabelHTML in CodigoHTML)
{
   if (LabelHTML.InnerHtml == "Cerrar sesión")
   {
       LabelHTML.InvokeMember("Click");
   }
}

Alguna ayuda??
Y otra cosa mas, el titulo esta bien puesto? o me sugieren poner otra cosa?
Gracias!


27-Feb-2015 23:14
Nacho Cabanes (+83)

Esa función "closeChildWindowsAndLogout" debería estar disponible en el código de la página o como algún fichero ".js" adicional. A priori, no tiene por qué haber problemas para usar en un webbrowser, que no deja de ser el núcleo de un navegador web y, por tanto, debería tener soporte de Javascript, así que debería basta con hacer clic en el elemento que tiene asociado ese código.

En el peor de los casos, puedes analizar el código fuente de esa función y crearte una función que no cierre ventanas, sino que sólo realice el logout. Pero sin ver el código de esa función, no puedo darte más ideas...






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)