C# ActiveX事件在javascript中不起作用
我的网站上有下一个代码。这段代码是一个c#activex,函数alert(MyCC.GetID().Fullname)可以工作,但事件不能工作。我做错了什么C# ActiveX事件在javascript中不起作用,c#,javascript,html,C#,Javascript,Html,我的网站上有下一个代码。这段代码是一个c#activex,函数alert(MyCC.GetID().Fullname)可以工作,但事件不能工作。我做错了什么 <object id="MyCC" codebase="http://localhost:3239/WebDAVCab.CAB" classid="clsid:5F9A5DDB-0D35-4893-A9ED-1FAFFE94373A" width="80" height="120" VIEWASTEXT> </obj
<object id="MyCC" codebase="http://localhost:3239/WebDAVCab.CAB"
classid="clsid:5F9A5DDB-0D35-4893-A9ED-1FAFFE94373A" width="80" height="120" VIEWASTEXT>
</object>
<script type="text/javascript">
MyCC = document.getElementById("MyCC");
alert(MyCC.GetID().Fullname);
MyCC.CardInserted = OnCardInserted;
MyCC.CardRemoved = OnCardRemoved;
function OnCardInserted()
{
alert("raised");
}
function OnCardRemoved()
{
alert("raised2");
}
</script>
MyCC=document.getElementById(“MyCC”);
警报(MyCC.GetID().Fullname);
MyCC.CardInserted=心形插入;
MyCC.CardRemoved=OnCardRemoved;
函数OnCardInserted()
{
警惕(“提高”);
}
函数OnCardRemoved()
{
警惕(“提高2”);
}
在Javascript中消除这些事件的正确语法如下:
function MyCC::CardInserted () { }
或
当然,您不必指定匿名函数:
MyCC::CardInserted = OnCardInserted;
要将事件附加到ActiveX,您可以使用Andy E解决方案,但要使用eval:
<object name="MyCC" id="MyCC" codebase="http://localhost:3239/WebDAVCab.CAB"
classid="clsid:5F9A5DDB-0D35-4893-A9ED-1FAFFE94373A" width="80" height="120" VIEWASTEXT>
</object>
<script type="text/javascript">
eval("function MyCC::CardInserted () {return OnCardInserted();}");
eval("function MyCC::CardRemoved () {return OnCardRemoved();}");
function OnCardInserted()
{
alert("raised");
}
function OnCardRemoved()
{
alert("raised2");
}
</script>
eval(“函数MyCC::CardInserted(){return OnCardInserted();}”);
eval(“函数MyCC::CardRemoved(){returnoncardRemoved();}”);
函数OnCardInserted()
{
警惕(“提高”);
}
函数OnCardRemoved()
{
警惕(“提高2”);
}
我试过了,但没有开火。在windows窗体中引入了此控件,并且工作得很好,所有事件都在windows窗体中触发,但在html/javascript中没有。我进行了测试,但在MyCC中返回了一个错误::我得到了预期的ie错误;
<object name="MyCC" id="MyCC" codebase="http://localhost:3239/WebDAVCab.CAB"
classid="clsid:5F9A5DDB-0D35-4893-A9ED-1FAFFE94373A" width="80" height="120" VIEWASTEXT>
</object>
<script type="text/javascript">
eval("function MyCC::CardInserted () {return OnCardInserted();}");
eval("function MyCC::CardRemoved () {return OnCardRemoved();}");
function OnCardInserted()
{
alert("raised");
}
function OnCardRemoved()
{
alert("raised2");
}
</script>