WebBrowser.InvokeScript Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Spustí skriptovací funkci definovanou v aktuálně načteném dokumentu.
Přetížení
InvokeScript(String) |
Spustí funkci skriptu, která je implementovaná aktuálně načteným dokumentem. |
InvokeScript(String, Object[]) |
Spustí funkci skriptu, která je definována v aktuálně načteném dokumentu. |
InvokeScript(String)
Spustí funkci skriptu, která je implementovaná aktuálně načteným dokumentem.
public:
System::Object ^ InvokeScript(System::String ^ scriptName);
public object InvokeScript (string scriptName);
member this.InvokeScript : string -> obj
Public Function InvokeScript (scriptName As String) As Object
Parametry
- scriptName
- String
Název funkce skriptu, která se má spustit.
Návraty
Objekt vrácený voláním Aktivní skriptování.
Výjimky
Instance WebBrowser již není platná.
Odkaz na podkladový nativní WebBrowser
nelze načíst.
Funkce skriptu neexistuje.
Příklady
Následující příklad ukazuje, jak volat funkci skriptu v dokumentu z aplikace WPF pomocí InvokeScript(String). V tomto příkladu nemá funkce skriptu žádné parametry.
Následuje dokument HTML, který implementuje funkci skriptu, která bude volána z WPF.
<html>
<head>
<script type="text/javascript">
// Function Without Parameters
function JavaScriptFunctionWithoutParameters()
{
outputID.innerHTML = "JavaScript function called!";
}
</script>
</head>
<body>
<div id="outputID" style="color:Red; font-size:16">
Hello from HTML document with script!
</div>
</body>
</html>
Následující příklad ukazuje implementaci WPF pro volání funkce skriptu v dokumentu HTML.
private void callScriptFunctionNoParamButton_Click(object sender, RoutedEventArgs e)
{
// Make sure the HTML document has loaded before attempting to
// invoke script of the document page. You could set loadCompleted
// to true when the LoadCompleted event on the WebBrowser fires.
if (this.loadCompleted)
{
try
{
this.webBrowser.InvokeScript("JavaScriptFunctionWithoutParameters");
}
catch (Exception ex)
{
string msg = "Could not call script: " +
ex.Message +
"\n\nPlease click the 'Load HTML Document with Script' button to load.";
MessageBox.Show(msg);
}
}
}
Poznámky
InvokeScript(String) nemělo by být volána před dokončením načítání dokumentu, který ho implementuje. Zpracování události můžete zjistit, kdy se dokument dokončil.LoadCompleted
Platí pro
InvokeScript(String, Object[])
Spustí funkci skriptu, která je definována v aktuálně načteném dokumentu.
public:
System::Object ^ InvokeScript(System::String ^ scriptName, ... cli::array <System::Object ^> ^ args);
[System.Security.SecurityCritical]
public object InvokeScript (string scriptName, params object[] args);
public object InvokeScript (string scriptName, params object[] args);
[<System.Security.SecurityCritical>]
member this.InvokeScript : string * obj[] -> obj
member this.InvokeScript : string * obj[] -> obj
Public Function InvokeScript (scriptName As String, ParamArray args As Object()) As Object
Parametry
- scriptName
- String
Název funkce skriptu, která se má spustit.
- args
- Object[]
Parametry, které se mají předat funkci skriptu.
Návraty
Objekt vrácený voláním Aktivní skriptování.
- Atributy
Výjimky
Instance WebBrowser již není platná.
Odkaz na podkladový nativní WebBrowser
nelze načíst.
Funkce skriptu neexistuje.
Příklady
Následující příklad ukazuje, jak volat funkce skriptu v dokumentu z aplikace pomocí InvokeScript(String, Object[]). V tomto příkladu funkce skriptu vyžadují parametry.
Následující dokument implementuje funkce skriptu, které budou volány z WPF.
<html>
<head>
<script type="text/javascript">
// Function Without Parameters
function JavaScriptFunctionWithoutParameters()
{
outputID.innerHTML = "JavaScript function 'called: " + message + ".";
}
</script>
</head>
<body>
<div id="outputID" style="color:Red; font-size:16">
Hello from HTML document with script!
</div>
</body>
</html>
Následující příklad ukazuje implementaci WPF pro volání funkcí skriptu v dokumentu HTML.
private void callScriptFunctionNoParamButton_Click(object sender, RoutedEventArgs e)
{
// Make sure the HTML document has loaded before attempting to
// invoke script of the document page. You could set loadCompleted
// to true when the LoadCompleted event on the WebBrowser fires.
if (this.loadCompleted)
{
try
{
this.webBrowser.InvokeScript("JavaScriptFunctionWithoutParameters", this.messageTextBox.Text);
}
catch (Exception ex)
{
string msg = "Could not call script: " +
ex.Message +
"\n\nPlease click the 'Load HTML Document with Script' button to load.";
MessageBox.Show(msg);
}
}
}
Poznámky
InvokeScript(String, Object[]) nemělo by být volána před dokončením načítání dokumentu, který ho implementuje. Zpracování události můžete zjistit, kdy se dokument dokončil.LoadCompleted
Pokud do skriptu, který vyvoláte, nepředáte dostatečný počet hodnot parametrů, budou mít parametry, kterým nepředáte hodnoty, nedefinovanou hodnotu. Pokud předáte příliš mnoho hodnot parametrů, budou nadbytečné hodnoty ignorovány.