【发布时间】:2012-04-19 20:15:41
【问题描述】:
我们正在使用Topaz Systems签名板设备记录文档上的电子签名。
这是公司提供的 javascript 使用演示:
基于Javascript的HTML互联网签名演示download
签名板通过<OBJECT /> 元素添加到页面。
<OBJECT classid=clsid:69A40DA3-4D42-11D0-86B0-0000C025864A height=75
id=SigPlus1 name=SigPlus1
style="HEIGHT: 90px; WIDTH: 300px; LEFT: 0px; TOP: 0px; border: 1px solid #000; margin-top:10px; " VIEWASTEXT>
<PARAM NAME="_Version" VALUE="131095">
<PARAM NAME="_ExtentX" VALUE="4842">
<PARAM NAME="_ExtentY" VALUE="1323">
<PARAM NAME="_StockProps" VALUE="0">
</OBJECT>
在 javascript 中对对象执行操作的文档引用 VBScript 并仅通过 id 调用对象。
<script language="javascript">
function OnClear() {
SigPlus1.ClearTablet();
}
function OnCancel() {
SigPlus1.TabletState = 0;
}
</script>
我发现这种方法无法在 DOM 中找到具有所有关联方法和属性的实际对象。调用这些函数会导致:
SigPlus1 未定义
或
SigPlus1.ClearTablet() 不是函数
如何在 javascript 函数中获取实际对象以调用其方法并设置其属性?
我尝试过使用原型和 jQuery 来选择 DOM 中的对象。
var vsig = $('SigPlus1'); // prototype
var vsig = $('#SigPlus1'); // jQuery
var vsig = document.form.SigPlus1; // document
其中没有一个给出所需的实际对象。
谢谢!
【问题讨论】:
-
您好 Roberjo,我尝试运行您的代码,但在我的情况下,SigData 未定义。当我单击签名按钮时,对象标签中没有出现签名。如果我的电子签名工作正常,我尝试在我的 DemoOCX.exe 中进行测试,但在那里工作正常。我哪里做错了?谢谢。
-
我建议打开一个新问题,并确保包含与如何初始化 Sig Pad 相关的代码。谢谢!
标签: javascript activex electronic-signature topaz-signatures