处理javascript中active x control(VB)返回的数组
我正在为 IE 开发一个通过 javascript 调用的 ActiveX 控件。 ActiveX 控件是用 Visual Basic 开发的,它有一个字符串数组。我将如何在 javascript 中使用这个字符串数组。
例如:-
var a = new Array()
a = objActiveX.GetArray(); // call to active x returns array of string, how will I loop through this in javascript.
上面的行不起作用。 我想循环遍历 javascript 中的每个字符串。
建议。
I am developing an ActiveX control for IE which is invoked through javascript. The ActiveX control is developed in visual basic and it has an array of strings. How will I use this array of strings in javascript.
Eg :-
var a = new Array()
a = objActiveX.GetArray(); // call to active x returns array of string, how will I loop through this in javascript.
The above line does not work.
I want to loop through each string in javascript.
Advise.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
通常,从 COM/OLE/ActiveX 组件返回的数组是 SAFEARRAY。 JScript 中有一个名为
VBArray
的特殊对象,可以在两者之间进行调整。请参阅http://blogs.msdn.com/b/david.wang/archive/2006/07/04/howto-convert- Between-jscript-array-and-vb-safe-array.aspx< /a> 是在 JavaScript 数组和
SAFEARRAY
之间来回切换的好例子。有关 VBArray 的更多详细信息,请参见此处:
http://msdn.microsoft.com/en-us/ library/3s0fw3t2(VS.80).aspx
请注意,这是 JScript 的一部分——我不能 100% 确定 IE 的默认脚本运行时是 JScript,但我认为是这样。
Usually, arrays returned from COM/OLE/ActiveX components are
SAFEARRAY
s. There's a special object in JScript calledVBArray
that adapts between the two.See http://blogs.msdn.com/b/david.wang/archive/2006/07/04/howto-convert-between-jscript-array-and-vb-safe-array.aspx for a good example of going back and forth between JavaScript arrays and
SAFEARRAY
s.More detailed info on
VBArray
here:http://msdn.microsoft.com/en-us/library/3s0fw3t2(VS.80).aspx
Note that this is part of JScript -- I'm not 100% sure that IEs default scripting runtime is JScript, but I think so.
此函数会将多维 VB 安全数组转换为多维 javascript 数组。
尝试一下,如果你能破解它,请告诉我。
This function will convert a multi-dimensional VB safe-array into a multi-dimensional javascript array.
Try it out, Let me know if you can break it.