jrey
jrey

Reputation: 2183

Retrieve return value of a Javascript function in the WebBrowser control in vb6

I have a vb6 application,

I make a function call with WebBrowser script but I need to get the return value of that function

my current function is

v = WebBrowser1.Document.parentWindow("v = function(){return callOther();};v()");

Then, i need the v value.. the posible value is javascript function.

How to retrieve "v", my test response with Error 91 (Object variable with block variable no set).. i'm beginner with vb6.

Upvotes: 3

Views: 6248

Answers (2)

Ilya Kurnosov
Ilya Kurnosov

Reputation: 3220

  1. Assign return value of your JavaScript function to JavaScript variable.
  2. Use execScript method of WebBrowser.Document.ParentWindow to call your JavaScript code.
  3. Now retrieve value of the variable via WebBrowser.Document.Script.<JavaScript variable name, case-sensitive> in VB6.

    Private Sub cmdJsFunc_Click()
        Dim retVal As String
    
        Call WebBrowser1.Document.parentWindow.execScript("v = function(){return 3.14;}; tempJsVar=v();")
        retVal = WebBrowser1.Document.Script.tempJsVar
    
        MsgBox retVal
    End Sub
    

Upvotes: 10

Mark Bertenshaw
Mark Bertenshaw

Reputation: 5689

Try:

Set v = WebBrowser1.Document.parentWindow("v = function(){return callOther();};v()")

Upvotes: 1

Related Questions