问题描述如下: 
    用C#开发的ActiveX嵌入网页中,该ActiveX中有一个按钮button1.现在要使得用户单击了button1后实现页面跳转的功能,即由当前的1.htm跳转到2.htm。 
    我的理解是该问题是JavaScript与ActiveX的交互问题,但是不知道该怎么解决! 
    请问大家有没有谁遇到过类似的需求,可否分享一下经验?谢谢。

解决方案 »

  1.   

    参考:
    Java和C# 混合编程
    http://search.download.csdn.net/search/Java%20C%23%20%E6%B7%B7%E5%90%88%E7%BC%96%E7%A8%8BC++与Java混合编程
    http://tech.ddvip.com/2009-06/1245034552123822.html
      

  2.   

    <object id="ctl" classid="clsid:A2B80A6E-42FA-4730-AEB2-B1FB38D2C8D1" width="100" height="50">
    </object>
    <script language="javascript">
    document.getElementById("ctl").函数名();
    通过反射调用javascript方法
    参考
      

  3.   

    楼上提供的这个链接 http://www.cnblogs.com/xiaoshatian/archive/2008/09/02/1281786.html  不错
      

  4.   

    activex里面定义一个事件,然后js注册一下事件,这样触发的事件就会调用js代码
    <script ID="clientEventHandlersForActivex" language="javascript" FOR="activexID" EVENT="事件名称">
    document.location.href = "2.htm";
    </script>
      

  5.   

    详见:
    C# COM Object for Use In JavaScript / HTML, Including Event Handling
    (http://www.codeproject.com/KB/cs/cs_com_obj_for_javascript.aspx)有关c#做actiovex控件的情况需要注意的东西,可以参考上面那篇文章后附的link参考链接
      

  6.   

    “activex里面定义一个事件,然后js注册一下事件”对此可否举一个具体的例子,谢谢了。
      

  7.   


    c#里面定义个事件,这个没问题吧js注册事件,就是上面的script还需要具体例子么?
      

  8.   

    你好!
    我遇到的另一个问题是:
    在JS中注册的事件是针对ActiveX而言的,而我要实现的效果是让JS捕获ActiveX中的按钮的单击事件。
    谢谢!
      

  9.   


    现在已经能能够让activex调用js代码了,完全可以满足你的需求
    如果要让js调用activx方法,那更简单,写个public方法并开放给COM就行了
      

  10.   

    wanghui0380 、shalen520, 正解。