一个百思不得其解的问题-事件 ,百分奉上

szmaimu 2004-12-23 10:04:52
在网页中插入一个atl控件,
这个控件有一个方法和一个事件,这个方法仅仅就是Fire这个事件:
经过测试如果直接调用(使用)这个事件,不管是在atl里调用还是在网页的jsp代码中调用,网页中的事件都不能触发。
如果我在网页中插入一个button,这个button点击调用这个方法,却能正常使网页触发这个事件。
代码如下:

<OBJECT ID="TestT1" CLASSID="CLSID:8EFE0B28-8D42-4E43-8B6C-D8ABECDBC090"></OBJECT>

<script language="JavaScript" for="TestT1" event="EvnT1()">
alert("ff");
</script>

<SCRIPT LANGUAGE=javascript>
TestT1.Test11();
</SCRIPT>

<input type="button" onclick="TestT1.Test11();">Test</input>



有谁知道问题的原因吗?

起初是为了方法的回掉,在atl中处理一个事情完毕后通知网页,发现在atl中直接fire事件不管用。


...全文
201 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Semigod 2004-12-24
  • 打赏
  • 举报
回复
建议你跟踪一下,看看错误是什么。或者在script中使用try{} catch()来捕获错误,看看是什么问题
ColderRain 2004-12-24
  • 打赏
  • 举报
回复
"不管是在atl里调用还是在网页的jsp代码中调用,网页中的事件都不能触发。
如果我在网页中插入一个button,这个button点击调用这个方法,却能正常使网页触发这个事件。"

到底是你的事件不能触发,还是网页中所有的事件都不能触发?
说清楚啊。

如果是你的事件没有触发,那是因为你在添加button之前,没有触发事件的代码,所以收不到事件。后来你加了button,button调用你的方法,你的方法这才触发事件,所以你才收到了事件。

如果是你不加button,网页中其它所有的事件都不能被触发,哪我就不清楚了。
szmaimu 2004-12-24
  • 打赏
  • 举报
回复
但是加入一个按钮就可以响应事件了
<input type="button" onclick="TestT1.Test11();">Test</input>
而这个按钮仅仅就是调用了TestT1的Test11方法,

为什么在前面直接调用却不行:

<SCRIPT LANGUAGE=javascript>
TestT1.Test11();
</SCRIPT>
FireEmissary 2004-12-24
  • 打赏
  • 举报
回复
可能是没有到idispatch吧.vb之类的不能直接用com对象
szmaimu 2004-12-24
  • 打赏
  • 举报
回复
昨晚的问题,今天早上顶一下!!!!
百思不得其解的华容道布局, 不信你试试.  

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧