怎么模拟点击网页上的一个javascript按钮
如何模拟点击网页上的一个javascript按钮?
那个按钮代码类似于
“
<input language="javascript" onclick="__doPostBack('edit','')" name="edit" id="edit" type="button" style="VISIBILITY: visible;position:absolute; left:60%" value="编辑属性信息" />
”
这样的按钮似乎无法通过TcppWebBrowser的Document对象检索到。
如果想模拟点击该怎么做呢?
另外是否有可能在接收网页时,将其中的内容进行替换。
比如,将某个链接指向别的地方。
或者,更改其中的javascript代码?
------解决方案--------------------
样能检索到。试试以下代码:
那个按钮代码类似于
“
<input language="javascript" onclick="__doPostBack('edit','')" name="edit" id="edit" type="button" style="VISIBILITY: visible;position:absolute; left:60%" value="编辑属性信息" />
”
这样的按钮似乎无法通过TcppWebBrowser的Document对象检索到。
如果想模拟点击该怎么做呢?
另外是否有可能在接收网页时,将其中的内容进行替换。
比如,将某个链接指向别的地方。
或者,更改其中的javascript代码?
------解决方案--------------------
样能检索到。试试以下代码:
- C/C++ code
BackBrowser->Document->QueryInterface(IID_IHTMLDocument,(void**)&BackpDoc); BackpDoc->get_all(&BackpAll); BackpAll->item(TVariant("edit"),TVariant(0),&BackpDisp);//注意这里的使用方法 BackpDisp->QueryInterface(IID_IHTMLElement,(void**)&BackpBit); BackpBit->click();
------解决方案--------------------
为简单方便的说明问题,我做了一个简单演示,过程如下:
先建立一个HTML文件,内容如下:
- HTML code
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled 1</title> </head> <body> <input language="javascript" onclick="alert('来自HTML页面中的按钮点击事件')" name="edit" id="edit" type="button" style="VISIBILITY: visible;position:absolute; left:60%" value="编辑属性信息" /> </body> </html>