Call a javascript function via vb.net in a webbrowser control

  • Thread starter Thread starter Andre Rode
  • Start date Start date
A

Andre Rode

Hi!

Since you could help me fixing my last problem, I would like to demand
your help again.

In summary I'm writing an appliation that remotely controls a website.
It has to login (works), choose the right action (works) and put customer
data (works partially)in some fields.

Now some of these fields are being checked via javascript functions. For
example: is the account and the banking code correct?
This function is called in different ways, for example via the onblur
event of the input type in the html form.

How can I call these functions since a simple webbrowser.GetElementById
("inputid").SetAttribute("value",sAccountNo) won't call the onblur event?
I tried

Me.WebBrowser1.Document.GetElementById("customerForm").InvokeMember
("Blur")
or
Me.WebBrowser1.Document.GetElementById("customerForm").InvokeMember
("Change")
or

Me.WebBrowser1.Document.Forms.Item("customerForm").InvokeMember
(nameofthejsfunction)

but nothing works.


the call of the function is similar to this:

fieldChanged('bankAccountPaymentForm');;return;;A4J.AJAX.Submit
('customerForm:bankAccountPaymentForm:BankPaymentRegion','customerForm',e
vent,{'parameters':{'customerForm:bankAccountPaymentForm:
_id548':'customerForm:bankAccountPaymentForm:_id548'}
,'actionUrl':'/OEWeb/pages/newOrder.jsf'} )

the website is realisied by JavaServerFaces if this could have any
meaning.

Hope you can help me again
Greetings from Germany,
André
 
Andre said:
How can I call these functions since a simple
webbrowser.GetElementById
("inputid").SetAttribute("value",sAccountNo) won't call the onblur
event? I tried

I have a WebBrowser control in one of my applications, and programmatically
call JavaScript functions using the following code:

\\\
browser.Document.Window.DomWindow.execscript("doSomething(parameters)",
"JavaScript")
///

This is probably different from calling within the context of a control
event, as I suspect things such as the "this" object may be referencing
different things, but perhaps this is enough to get you started..?

HTH,
 
pardon me for jumping in,
is "Javascript" exactly the literal "JavaScript"?

when to use browser.document.invokescript(....) or something similar?

args() as object
' ... setup the args objet
browser.Document.InvokeScript(ScriptName, args)
 
GS said:
pardon me for jumping in,
is "Javascript" exactly the literal "JavaScript"?

Yes, exactly that -- sorry, should have made that clearer.
when to use browser.document.invokescript(....) or something similar?

I don't know about that one, someone else will have to help there...
 
\(O\)enone said:
Yes, exactly that -- sorry, should have made that clearer.


I don't know about that one, someone else will have to help there...

I just wanted to thank, the hint with
browser.Document.Window.DomWindow.execscript

worked perfectly
 
Back
Top