Javascript jquery signfield在iPad上只允许一行
我需要在表单上添加一个签名字段,用于在iPad上签署文档 我需要一个插件,将允许在同一表单上输入多个签名 我发现这个jQuery插件“signfield”非常好用 但它有一个巨大的问题 在桌面firefox、safari等平台上,它工作得很好 在iPad上,它一次只允许你画一条线——如果你抬起手指,然后尝试画另一条线,画布就会清晰 如果你的签名可以画成一条连续的线,那就好了,但那是不太可能的 在桌面safari上,它可以正常工作——你可以画很多线。但在移动safari上,它有这个问题 这个问题发生在演示中,所以这是插件的问题,而不是我的实现 救命 对于jSignature: 请记住,我已经对库进行了一些修改,这样我就可以在画布上打印文本,这样就可以表明他们同意的内容(我已经从下面的代码中删除了我的custome代码,以显示基本库的更多原始示例) HTML: 检查是否至少执行了一次冲程Javascript jquery signfield在iPad上只允许一行,javascript,jquery,ipad,canvas,safari,Javascript,Jquery,Ipad,Canvas,Safari,我需要在表单上添加一个签名字段,用于在iPad上签署文档 我需要一个插件,将允许在同一表单上输入多个签名 我发现这个jQuery插件“signfield”非常好用 但它有一个巨大的问题 在桌面firefox、safari等平台上,它工作得很好 在iPad上,它一次只允许你画一条线——如果你抬起手指,然后尝试画另一条线,画布就会清晰 如果你的签名可以画成一条连续的线,那就好了,但那是不太可能的 在桌面safari上,它可以正常工作——你可以画很多线。但在移动safari上,它有这个问题 这个问题
if ($("#signature").jSignature('getData', 'native', '', '').length === 0) {
// user has not signed
} else {
// user has signed
}
获取签名图像base64字符串:
model.getSignatureData = function () {
return $("#signature").jSignature("getData", "image");
}
为签名base64值设置可观察值:
model.SignatureValue(model.getSignatureData()[1]);
然后,我只需将发布到API的JSON中的signature value属性传递给API我使用jSignature库处理这样的项。过来看。这个插件看起来不错,但是你怎么能把它添加到一个表单中,这样它就可以和表单一起提交数据呢?我有很多表单的提交功能,它可以在任何设备和浏览器上工作。这取决于您的需要以及如何存储签名等。我实际上将签名转换为base64字符串并将其存储在数据库中。然后在需要时将其转换回显示。我需要加密存储,而该任务不允许存储在文件系统中。提交后,您希望如何处理该图像。我编写了几个函数与基本库一起使用,以获得我想要的一切,并覆盖它的一些默认行为以满足我的确切需要。只需将base64字符串作为表单字段提交,以及表单的其余部分。该库有一个内置函数“getData”,它将为您保存base64字符串。例如:return$(“#signature”).jSignature(“getData”,“image”);
model.getSignatureData = function () {
return $("#signature").jSignature("getData", "image");
}
model.SignatureValue(model.getSignatureData()[1]);