2012-05-11 54 views
0

我需要处理CDhtmlDialog中的A元素的onclick事件,该事件使用HTTP协议(不是来自资源的HTML)加载外部HTML文件。我用下面的代码:通过HTTP加载外部HTML时,DHTML_EVENT_ONCLICK不起作用?

BEGIN_DHTML_EVENT_MAP(CAdDialog) 
    DHTML_EVENT_ONCLICK(_T("adlink"), OnAnchorClicked) 
END_DHTML_EVENT_MAP() 

我的一个元素HTML如下:

<a href="http://www.google.com/" id="adlink">Click here!!!</a> 

我想到的是,当用户点击链接CDhtmlDialog将调用OnAnchorClicked功能。但是,没有任何反应。它看起来像DHTML_EVENT_ONCLICK不适用于CDhtmlDialog,如果它加载外部URL而不是加载资源?有什么方法可以捕获通过HTTP在CDhtmlDialog中加载的HTML的onclick事件?

+0

是一个框架中的链接? –

回答

1
DHTML_EVENT_TAG(DISPID_HTMLELEMENTEVENTS_ONCLICK, _T("a"), OnLinkClickedMethod) 

这是一个真正的痛苦找到。微软的调度ID文件是可怕的。这将捕获CDHtmlDialog中每次点击的链接。

给所有未来的任性旅行者的说明:所有的发送ID都在MsHtmdid.h头文件中。

相关问题