HtmlDocument.InvokeScript Метод

Определение

Выполняет функцию активного скрипта, определенную на HTML-странице.

Перегрузки

Имя Описание
InvokeScript(String)

Выполняет функцию активного скрипта, определенную на HTML-странице.

InvokeScript(String, Object[])

Выполняет функцию активного скрипта, определенную на HTML-странице.

Примеры

В следующем примере кода выполняется содержимое скрипта на веб-странице. В примере кода требуется загрузить следующую веб-страницу.

<HTML>
<SCRIPT>
function test(name, address) {
window.alert("Name is " + name + "; address is " + address);
}
</SCRIPT>

<BODY>
</BODY>
</HTML>
private void InvokeTestMethod(String name, String address)
{
    if (webBrowser1.Document != null)
    {
        Object[] objArray = new Object[2];
        objArray[0] = (Object)name;
        objArray[1] = (Object)address;
        webBrowser1.Document.InvokeScript("test", objArray);
    }
}
Private Sub InvokeTestMethod(ByVal Name As String, ByVal Address As String)
    If (Not (WebBrowser1.Document Is Nothing)) Then
        Dim ObjArr(2) As Object
        ObjArr(0) = CObj(New String(Name))
        ObjArr(1) = CObj(New String(Address))
        WebBrowser1.Document.InvokeScript("test", ObjArr)
    End If
End Sub

InvokeScript(String)

Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs

Выполняет функцию активного скрипта, определенную на HTML-странице.

public:
 System::Object ^ InvokeScript(System::String ^ scriptName);
public object InvokeScript(string scriptName);
public object? InvokeScript(string scriptName);
member this.InvokeScript : string -> obj
Public Function InvokeScript (scriptName As String) As Object

Параметры

scriptName
String

Имя вызываемого метода скрипта.

Возвращаемое значение

Объект, возвращаемый вызовом Active Scripting.

Примеры

В следующем примере кода выполняется содержимое скрипта на веб-странице. В примере кода требуется, WebBrowser чтобы в вызываемом приложении был вызван WebBrowser1и загружена следующая веб-страница.

<HTML>

    <HEAD>
        <TITLE>Invoke Script Sample</TITLE>

        <SCRIPT>
            function MyObject() {
                this.Data = "Data for my private object.";
            }
            // Return a string.
            function test() {
                return("This is a test.");
            }
            // Return a JScript object.
            function testJScriptObject() {
                return(new(MyObject));
            }
            // Return a DOM element.
            function testElement() {
                return(div1);
            }
        </SCRIPT>
    </HEAD>

    <BODY>

        <DIV id="div1">
        </DIV>

    </BODY>

</HTML>
private void InvokeScript()
{
    if (webBrowser1.Document != null)
    {
        HtmlDocument doc = webBrowser1.Document;
        String str = doc.InvokeScript("test").ToString() ;
        Object jscriptObj = doc.InvokeScript("testJScriptObject");
        Object domOb = doc.InvokeScript("testElement");
    }
}
Private Sub InvokeScript()
    If (WebBrowser1.Document IsNot Nothing) Then
        With WebBrowser1.Document
            Dim Str As String = .InvokeScript("test")
            Dim JScriptObj As Object = .InvokeScript("testJScriptObject")
            Dim DomObj As Object = .InvokeScript("testElement")
        End With
    End If
End Sub

Комментарии

Базовый тип возвращаемого InvokeScript объекта будет отличаться. Если вызываемая функция активного скрипта возвращает скалярные данные, например строку или целое число, она будет возвращена в виде строки. Если он возвращает объект на основе скрипта, например объект, созданный с помощью оператора JScript или VBScript new , он будет иметь тип Object. (Вы можете вызывать такие объекты, вызывая GetType и используя InvokeMember.) Если он возвращает элемент DOM HTML, например элемент или DIV объект TABLE, он будет иметь тип Object; если вы добавили ссылку проекта на MSHTML.DLL, однако он будет приведение к конкретному неуправляемым типу DOM.

Вы можете вызвать любую функцию, написанную на любом языке активного скрипта, установленном на компьютере пользователя, включая JScript и VBScript.

InvokeScript ничего не будет делать, если пользователь явно отключил выполнение скрипта в Internet Explorer или если текущая конфигурация безопасности для веб-страницы не разрешает ее.

Применяется к

InvokeScript(String, Object[])

Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs
Исходный код:
HtmlDocument.cs

Выполняет функцию активного скрипта, определенную на HTML-странице.

public:
 System::Object ^ InvokeScript(System::String ^ scriptName, cli::array <System::Object ^> ^ args);
public object InvokeScript(string scriptName, object[] args);
public object? InvokeScript(string scriptName, object[]? args);
member this.InvokeScript : string * obj[] -> obj
Public Function InvokeScript (scriptName As String, args As Object()) As Object

Параметры

scriptName
String

Имя вызываемого метода скрипта.

args
Object[]

Аргументы для передачи в метод скрипта.

Возвращаемое значение

Объект, возвращаемый вызовом Active Scripting.

Примеры

В следующем примере кода выполняется содержимое скрипта на веб-странице. В примере кода требуется, WebBrowser чтобы в вызываемом приложении был вызван WebBrowser1и загружена следующая веб-страница.

<HTML>
    <SCRIPT>
        function test(name, address) {
            window.alert("Name is " + name + "; address is " + address);
        }
    </SCRIPT>

    <BODY>
    </BODY>
</HTML>
private void InvokeTestMethod(String name, String address)
{
    if (webBrowser1.Document != null)
    {
        Object[] objArray = new Object[2];
        objArray[0] = (Object)name;
        objArray[1] = (Object)address;
        webBrowser1.Document.InvokeScript("test", objArray);
    }
}
Private Sub InvokeTestMethod(ByVal Name As String, ByVal Address As String)
    If (Not (WebBrowser1.Document Is Nothing)) Then
        Dim ObjArr(2) As Object
        ObjArr(0) = CObj(New String(Name))
        ObjArr(1) = CObj(New String(Address))
        WebBrowser1.Document.InvokeScript("test", ObjArr)
    End If
End Sub

Комментарии

Базовый тип возвращаемого InvokeScript объекта будет отличаться. Если вызываемая функция активного скрипта возвращает скалярные данные, например строку или целое число, она будет возвращена в виде строки. Если он возвращает объект на основе скрипта, например объект, созданный с помощью оператора JScript или VBScript new , он будет иметь тип Object. (Вы можете вызывать такие объекты, вызывая GetType и используя InvokeMember.) Если он возвращает элемент DOM HTML, например элемент или DIV объект TABLE, он будет иметь тип Object; если вы добавили ссылку проекта на MSHTML.DLL, однако он будет приведение к конкретному неуправляемым типу DOM.

Вы можете вызвать любую функцию, написанную на любом языке активного скрипта, установленном на компьютере пользователя, включая JScript и VBScript.

Этот метод не будет делать ничего, если пользователь явно отключил выполнение скрипта в Internet Explorer или если текущая конфигурация безопасности для веб-страницы не разрешает его.

Применяется к