读取页面元素的onclick属性值 禁止重定向 获取url重定向后Location头指定的重定向目标

更多精彩内容,请见:http://www.16boke.com

(1) 读取页面元素的onclick属性值

html代码:

<a id='linka' οnclick="alert('ok');">链接</a>

取出item身上onclick属性的值:alert('ok');
实现:

IHTMLElement *item;// 已经找到该元素
CComQIPtr<IHTMLElement> spElem(item);
VARIANT var;
spElem->get_onclick(&var);
CComQIPtr<IDispatch> spDisp(var.pdispVal);
DISPID dispId = 0;
OLECHAR *szName = L"toString";
spDisp->GetIDsOfNames(IID_NULL, &szName, 1, LOCALE_SYSTEM_DEFAULT, &dispId);
DISPPARAMS params;
memset(¶ms, 0, sizeof(params));
VARIANT varRet;
spDisp->Invoke(dispId, IID_NULL, LOCALE_SYSTEM_DEFAULT, DISPATCH_METHOD, ¶ms, &varRet, NULL, NULL);
CString k= CString(varRet.bstrVal);

(2)禁止重定向并获取url重定向后Location头指定的重定向目标

禁止重定向用INTERNET_FLAG_NO_AUTO_REDIRECT

DWORD   dwFlags = INTERNET_FLAG_TRANSFER_ASCII|INTERNET_FLAG_NO_AUTO_REDIRECT; 
cFile = (CHttpFile*)Sess.OpenURL(url,1,dwFlags);

获取url重定向后Location头指定的重定向目标
CString cstrLocation;

cFile->QueryInfo(HTTP_QUERY_RAW_HEADERS_CRLF, cstrLocation); 

更多精彩内容,请见:http://www.16boke.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值