Javascript 如何在重新加载页面后输出jsignature

Javascript 如何在重新加载页面后输出jsignature,javascript,jquery,post,Javascript,Jquery,Post,我使用jsignature插件()来允许用户对表单进行“签名”。这一切都正常工作,但我试图在页面重新加载后将签名输出到同一画布中,以便在必要时对其进行进一步编辑(仅当表单验证因任何原因失败时才会发生这种情况) 我无法理解的是,如果我在重新加载页面之前重新绘制,我可以正确地重新绘制它,但是如果我在重新加载之后尝试,我会得到一个“错误:jSignature无法找到格式为“undefined”的导入插件”错误,并且它不会工作 因此,如果我在submit按钮上使用以下JS代码,它将正常工作(清除画布,然

我使用jsignature插件()来允许用户对表单进行“签名”。这一切都正常工作,但我试图在页面重新加载后将签名输出到同一画布中,以便在必要时对其进行进一步编辑(仅当表单验证因任何原因失败时才会发生这种情况)

我无法理解的是,如果我在重新加载页面之前重新绘制,我可以正确地重新绘制它,但是如果我在重新加载之后尝试,我会得到一个“错误:jSignature无法找到格式为“undefined”的导入插件”错误,并且它不会工作

因此,如果我在submit按钮上使用以下JS代码,它将正常工作(清除画布,然后重新绘制):

但是,我不想进行JS表单验证,而是希望通过表单传递值,然后在必要时在下一页上重用它。但是,当我使用以下代码时(因此它使用存储在#signature_capture2中的字符串运行importData命令),我得到了找不到导入插件错误:

    $("#signature").jSignature({'UndoButton': true});
    if($('#recreatesig').val()=='1')
    {
        alert('recreate');
        $("#signature").jSignature("importData",$('#signature_capture2').val());
    }
    $('#qmembershipsubmit').click(function(e) {
        var datapair = $('#signature').jSignature("getData","base30");
        var datastr="data:" + datapair.join(",");
        $("#signature_capture2").val(datastr);
    });
datastr的值与signature_capture2中存储的值相匹配,因此我一辈子都看不出为什么它不起作用,因为它确实在做同样的事情(并且它在同一个页面上重新加载,所以两个页面上都包含相同的插件/js脚本)

如果有人能透露任何信息,我们将不胜感激

干杯


Dave

我已经成功地使用了jSignature(“getData”,“default”),它将数据输出到base64中,可以用于img标记,并且在使用importData时也可以工作

    $("#signature").jSignature({'UndoButton': true});
    if($('#recreatesig').val()=='1')
    {
        alert('recreate');
        $("#signature").jSignature("importData",$('#signature_capture2').val());
    }
    $('#qmembershipsubmit').click(function(e) {
        var datapair = $('#signature').jSignature("getData","base30");
        var datastr="data:" + datapair.join(",");
        $("#signature_capture2").val(datastr);
    });