다음을 통해 공유


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)

HTML 페이지에 정의된 액티브 스크립트 함수를 실행합니다.

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

매개 변수

scriptName
String

호출할 스크립트 메서드의 이름입니다.

반환

Object

액티브 스크립트 호출이 반환하는 개체입니다.

예제

다음 코드 예제에서는 웹 페이지에 스크립트의 내용을 실행합니다. 코드 예제를 실행 하려면를 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.) 와 같은 HTML DOM 요소를 반환 하는 경우는 DIV 또는 TABLE, 형식 됩니다 ObjectMSHTML에 대 한 프로젝트 참조를 추가한 경우. 그러나 DLL, 특정 관리 되지 않는 DOM 형식으로 캐스팅 됩니다.

JScript 및 VBScript를 포함 하는 사용자의 컴퓨터에 설치 된 모든 액티브 스크립팅 언어로 작성 된 함수를 호출할 수 있습니다.

InvokeScript 웹 페이지에 대 한 현재 보안 구성을 허용 하지 않는 경우 또는 사용자가 명시적으로 Internet Explorer에서 스크립트 실행을 해제 하는 경우에 아무것도 수행 됩니다.

적용 대상

InvokeScript(String, Object[])

HTML 페이지에 정의된 액티브 스크립트 함수를 실행합니다.

public:
 System::Object ^ InvokeScript(System::String ^ scriptName, cli::array <System::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[]

스크립트 메서드에 전달할 인수입니다.

반환

Object

액티브 스크립트 호출이 반환하는 개체입니다.

예제

다음 코드 예제에서는 웹 페이지에 스크립트의 내용을 실행합니다. 코드 예제를 실행 하려면를 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.) 와 같은 HTML DOM 요소를 반환 하는 경우는 DIV 또는 TABLE, 형식 됩니다 ObjectMSHTML에 대 한 프로젝트 참조를 추가한 경우. 그러나 DLL, 특정 관리 되지 않는 DOM 형식으로 캐스팅 됩니다.

JScript 및 VBScript를 포함 하 여 사용자의 컴퓨터에 설치 된 모든 액티브 스크립팅 언어로 작성 된 함수를 호출할 수 있습니다.

이 메서드는 사용자가 명시적으로 Internet Explorer에서 스크립트 실행을 해제 하는 경우에 아무것도 표시 되지 않음 또는 웹 페이지에 대 한 현재 보안 구성을 허용 하지 않는 경우 수행 됩니다.

적용 대상