
然后再事件中添加
System.Windows.Forms.HtmlDocument document =form1.webBrowser1.Document
this.TextBox.text=document.All["textfield2"]
你试试看
<!DOCTYPE html><html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<div>我是div</div>
<input type="text">
<a href="###">点击我获取所有标签里的值</a>
<script type="text/javascript">
var div = document.getElementsByTagName('div')[0],
input = document.getElementsByTagName('input')[0],
a = document.getElementsByTagName('a')[0]
a.onclick = function () {
alert('div里的值是:' + div.innerHTML + '\n' + 'input里的值是:' + input.value + '\n' + 'a标签里的值是:' + a.innerHTML)
}
</script>
</body>
</html>
一般来说,有起始和结束标签的(也就是双标签)获取其中的值都是用的innerHTML属性,单标签的获取其中的值都是用value属性的。
CppWebBrowser的使用三 获取表单内容主要函数如下:
AnsiString __fastcall TMainForm::GetFormValue(TCppWebBrowser *CppWebBrowser1, AnsiString ActionStr)
{
//赋值
AnsiString MyStr = ActionStr
AnsiString SName,SId,SValue
AnsiString ReturnStr//返回值
ReturnStr = ""
SName = MyStr.SubString(1,MyStr.Pos(",")-1)
MyStr = MyStr.SubString(MyStr.Pos(",") 1,MyStr.Length()-MyStr.Pos(","))
SId = MyStr.SubString(1,MyStr.Pos(",")-1)
SValue = MyStr.SubString(MyStr.Pos(",") 1,MyStr.Length())
if(SValue==NULL)SValue=""
VARIANT id, index,id1,index1
IDispatch *spDispatch
IHTMLDocument2 *pDoc2
IHTMLElement *pElement
IHTMLElementCollection *pElementCol
IHTMLFormElement *pFormElement
IHTMLInputElement *pInputElement//Input
IHTMLTextAreaElement* pTextAreaElement// TextArea
IDispatch *WebDocument=static_cast<IDispatch*>(CppWebBrowser1->Document)
pDoc2=static_cast<IHTMLDocument2*>(WebDocument)
//首先获取IWebBrowser2接口
if (SUCCEEDED(pDoc2->get_forms(&pElementCol))) //得到form
{
long p=0
if(SUCCEEDED(pElementCol->get_length(&p))) //哪一个form
if(p!=0)
{
for(long i=0i<=(p-1)i )
{
V_VT(&id) = VT_I4
V_I4(&id) = i
V_VT(&index) = VT_I4
V_I4(&index) = 0
if(SUCCEEDED(pElementCol->item(id,index, &spDispatch)))
{
if(SUCCEEDED(spDispatch->QueryInterface(IID_IHTMLFormElement,(void**)&pFormElement)))
{
long q=0
if(SUCCEEDED(pFormElement->get_length(&q))) //得到form中的控件个数
for(long j=0j<=(q-1)j )
{
V_VT(&id) = VT_I4
V_I4(&id) = j
V_VT(&index) = VT_I4
V_I4(&index) = 0
if(SUCCEEDED(pFormElement->item(id,index, &spDispatch)))
{
if(SUCCEEDED(spDispatch->QueryInterface(IID_IHTMLElement,(void**)&pElement)))
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)