繁体   English   中英

在IE9中从JavaScript调用ActiveX方法

[英]Call ActiveX method from JavaScript in IE9

我在页面上有一个activex控件。 通常,要调用它的方法,我使用这样的东西:

document.getElementById('activexControlID').MethodName(2) = 'value string';

我知道,它可能看起来很奇怪,但它在IE6,IE7,IE8中工作正常。 不幸的是,它在IE9中不起作用。 它会抛出错误“无法分配给函数结果”。

我已经尝试过:

document.getElementById('activexControlID').MethodName[2] = 'value string';
// and
document.getElementById('activexControlID').MethodName(2, 'value string');

但没有运气。

UPDATE

表达式document.getElementById('activexControlID').MethodName(2) = 'value string'; 不要假设返回一个值。 它就像一个二传手。 毕竟,我可以稍后使用代码var value = document.getElementById('activexControlID').MethodName(2);来获取它var value = document.getElementById('activexControlID').MethodName(2); 我可以在IE9中获得价值。 但无法设置它。

我不知道它是如何在activex控件中实现的,但它类似于数组,只是使用()而不是[] 再一次,它适用于IE的早期版本。

更新2

看起来像是IE9中的一个错误 希望将被修复。

修复了错误和代码

document.getElementById('activexControlID').MethodName(2) = 'some value';

现在适用于IE9 RC1。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM