uwp
Usando JavaScript en WebView
Buscar..
Introducción
Este documento le muestra cómo puede utilizar JavaScript en WebView.
Este documento cubre: Obtención de HTML desde la vista web, Introducción de texto en el cuadro de texto en el sitio web, Simular, haga clic para hacer clic en un botón del sitio web
Sintaxis
-
await webView.InvokeScriptAsync("eval", new string[] { functionString })
- para usar JavaScript -
.documentElement
- para obtener una referencia al nodo raíz del documento -
.getElementsByClassName(Class_Name)
- para obtener elementos que usen Class Name -
.getElementsByTagName(Tab_Name)
- para obtener elementos usando el nombre de etiqueta -
.getElementById(ID)
: para obtener el elemento mediante ID -
.nodeName
- para obtener el nombre del nodo -
.childNodes
- para obtener los elementos hijos -
.outerHTML
- para obtener el HTML externo -
.innerHTML
- para obtener el HTML interno -
.innerText
- para obtener o establecer InnerText -
.click()
- para simular click
Observaciones
Obteniendo HTML de la WebView
Usa .outerHTML
para obtener el HTML
Aquí hay un ejemplo de código para obtener el código HTML completo del sitio web.
private async void GetHTMLAsync()
{
var siteHtML = await webView.InvokeScriptAsync("eval", new string[] { "document.documentElement.outerHTML;" });
}
Introducción de texto en el cuadro de texto del sitio web.
Use .innerText
para establecer el valor
Aquí hay un ejemplo de código para ingresar texto en el cuadro de búsqueda en el sitio web de Bing
private async void EnterTextAsync(string enterText)
{
var functionString = string.Format(@"document.getElementsByClassName('b_searchbox')[0].innerText = '{0}';", enterText);
await webView.InvokeScriptAsync("eval", new string[] { functionString });
}
Simular clic para hacer clic en el botón de un sitio web
Utilice .click()
para simular un clic
Aquí hay un ejemplo de código para hacer clic en el botón de búsqueda en el sitio web de Bing
private async void SimulateClickAsync()
{
var functionString = string.Format(@"document.getElementsByClassName('b_searchboxSubmit')[0].click();");
await webView.InvokeScriptAsync("eval", new string[] { functionString });
}
Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow