VBA IE call a javascript containing 'this' keyword -
i attempting call javascript function on webpage contains 'this' keyword referring <input>
textbox on webpage. function looks this:
functiondostuff('hdnattribute',this,'key')
using
js = "functiondostuff('hdnattribute',this,'key')" call ie.document.parentwindow.execscript(js)
doesn't throw error not produce results of function since this
cannot identified.
stepping through website this = [object disphtmlinputelement]
instead of element name while function running. have ideas?
good morning,
adding more issue. there seems 2 problems, 1st setting window.event, functiondostuff begins with: if (window.event && window.event.keycode == 13)
, when function called exits out due event being null. there way pass event 13 website? second issue submitting "this" htmlinputobject.
does know method fire 'onkeypress' event? @ point of trying sendkeys avoid calling function have not been able them work ie. suggestions!
key point context. if have html
<input onclick="functiondostuff('hdnattribute',this,'key')">
then browser can infer context user interaction , set this
correctly.
from within vba that's different matter , have define context manually.
how this:
dim js variant js = array( _ "var input = document.getelementbyid('yourelementsid');", _ "functiondostuff('hdnattribute',input,'key');" _ ) call ie.document.parentwindow.execscript(join(js, vbnewline))
this way define context yourself.
document.getelementbyid
sake of example. if element has no id, use other method (like dom traversal, document.queryselectorall
, document.getelementsbytagname
+ loop, ...) reference desired element.
Comments
Post a Comment