Vb 的 CreateObject 的替代方案是 Javascript 中的 ActiveXObject 不起作用
Posted
技术标签:
【中文标题】Vb 的 CreateObject 的替代方案是 Javascript 中的 ActiveXObject 不起作用【英文标题】:Alternative of CreateObject of Vb is ActiveXObject in Javascript not working 【发布时间】:2016-10-01 11:57:17 【问题描述】:我使用 VB 脚本编写的工作 html 页面,在这里单击 Button 文档会打开。 CreateObject 在这里工作正常。
Sub Opensig_OnClick()
Dim laccno
Dim accno
laccno = txtaccno.value
Set sigobj = CreateObject("Wrsrv.Document")
reStatus = sigobj.Verify(laccno,amt,1)
End Sub
但是我必须在 JSP 中编写 ActiveXObject 不起作用的代码。我写的代码:
function Opensig_OnClick(customerId)
var str;
$.ajax(
url: getContextPath() + "/app/omnidocupload/appDocument/sigcap/accountnumberforsalaryaccount/" + customerId,
async: true,
data:
custId: customerId
,
success: function(responseObject)
str = responseObject;
);
var sigobj = new ActiveXObject("Wrsrv.Document");
var reststus = sigobj.verify(str, 0, 1);
点击按钮,函数Opensig_OnClick被调用。但我在 var sigobj= new ActiveXObject("Wrsrv.Document"); 行出现错误,即 Automation Server 无法创建对象
【问题讨论】:
ActiveXObject 仅在 Internet Explorer 中受支持 ***.com/questions/25311570/activexobject-in-ie11 我在 IE 8 中运行了这段代码,并在阅读其他帖子时启用了所有 ActiveXObject 设置。仍然会出现这个错误。你能建议在 javascipt 中编写这个 vbscript 的任何其他方式吗? 在ie11上运行程序时实际设置模式为ie 8 按照建议进行的更改仍然无效 您对异步代码的工作方式感到困惑。在您的代码中,str
将不包含行 var reststus = sigobj.verify(str, 0, 1);
上的任何值。将最后两行移到 success
回调中。
【参考方案1】:
在 Internet 选项 -> 安全 -> 自定义级别的 ActiveX 控件和插件中完成以下设置后,按钮工作正常。
允许禁用 ActiveX 过滤。
使 ActiveX 的所有其他属性在此处显示为 Enable 。 特别是下载未签名的 ActiveX 控件和初始化和脚本 ActiveX 控件未标记为安全。
在启用所有这些功能时。您将收到您的计算机存在风险的消息。但是要运行这个你必须这个设置。
这只会在 IE8 上运行。
【讨论】:
以上是关于Vb 的 CreateObject 的替代方案是 Javascript 中的 ActiveXObject 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
vb.net中怎么使用createobject添加类呢,就好像vb中一样
VB.NET - Visual Studio 2003 的“继续”的替代方案