有人可以向我解释一下如何获取我的JSignature表单的输出并将其存储在我的MySQL数据库中,这样我就可以在以后的某个页面上重新绘制愚蠢的东西吗?我发誓我有时会觉得这样一个白痴。请记住,我对Javascript知之甚少,可能需要有人一步一步地指导我。
好的,我已经使用以下代码在我的页面上运行了JSignature:
<div id="signatureparent">
<div id="signature"></div>
<button type="button" onclick="$('#signature').jSignature('clear')">Clear</button>
<button type="button" onclick="alert($('#signature').jSignature('getData','base30'))">Save</button>
</div>
<div id="scrollgrabber"></div>
<script src="jsig/src/jSignature.js"></script>
<script src="jsig/src/plugins/jSignature.CompressorBase30.js"></script>
<script src="jsig/src/plugins/jSignature.CompressorSVG.js"></script>
<script src="jsig/src/plugins/jSignature.UndoButton.js"></script>
<script>
$(document).ready(function() {
var $sigdiv = $("#signature").jSignature({'UndoButton':false})
})
</script>
这一切都在通过$ _POST提交大量数据的表单中。
正如您所看到的,我添加了一个按钮,它将输出显示到任何警报窗口,但我不知道如何将该值放在隐藏的输入中,以便可以使用我的表单的其余部分提交。
提前感谢大家。
答案 0 :(得分:5)
Funky插件。
<div id="signatureparent">
<div id="signature"></div>
<button type="button" onclick="$('#signature').jSignature('clear')">Clear</button>
<button type="button" id="btnSave">Save</button>
</div>
<input type="hidden" id="hiddenSigData" name="hiddenSigData" />
<div id="scrollgrabber"></div>
<script src="jsig/src/jSignature.js"></script>
<script src="jsig/src/plugins/jSignature.CompressorBase30.js"></script>
<script src="jsig/src/plugins/jSignature.CompressorSVG.js"></script>
<script src="jsig/src/plugins/jSignature.UndoButton.js"></script>
<script>
$(document).ready(function() {
var $sigdiv = $("#signature").jSignature({'UndoButton':false});
// -- i explain from here...
$('#btnSave').click(function(){
var sigData = $('#signature').jSignature('getData','base30');
$('#hiddenSigData').val(sigData);
});
// -- ... to here.
})
</script>
上面的代码片段说:
1.“当点击id为'btnSave'的按钮时”...
2.将签名画布转换为bas64编码的字符串,并将其保存在名为“sigData”的变量中
3.将id为“hiddenSigData”的字段的值设置为变量'sigData'。
您是否有处理表单的服务器端代码?我假设你正在使用<form>
标签......然后该字段将显示POST的数据。
如果您没有任何数据处理程序,则需要根据您正在运行的内容查看C#/ PHP。但是,无论如何......这就是JS位。