【发布时间】:2021-04-19 18:05:41
【问题描述】:
我正在尝试使用 jquery(ajax) 将 jsignature 保存到数据库。当我在浏览器中对包含进行控制台时,它会向我显示此错误:
未捕获的 RangeError:
数组(2)
0: "图片/png;base64"
1:“iVBORw0KGgoAAAANSUh........”
长度:2
超过最大调用堆栈大小
at Fb (jquery-2.2.0.min.js:4)
at Fb (jquery-2.2.0.min.js:4)
at Fb (jquery-2.2.0.min.js:4)
我的代码:
<script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jSignature/2.1.3/jSignature.min.js" integrity="sha512-lZ7GJNAmaXw7L4bCR5ZgLFu12zSkuxHZGPJdIoAqP6lG+4eoSvwbmKvkyfauz8QyyzHGUGVHyoq/W+3gFHCLjA==" crossorigin="anonymous"></script>
<div id="signature" style="width:500;height:400;border:1px solid black">
</div>
<button type='button' id='save'>Save signature</button>
<input id='diagrama_venosa' type='hidden' >
var $sigdiv = $("#signature").jSignature({
'background-color': 'transparent',
'decor-color': 'transparent',
'color':pen,
'width': 500,
'height': 400
});
$('#save').on('click', function(event) {
event.preventDefault();
var signimage = $sigdiv.jSignature('getData', 'image');
console.log(signimage);
var diagrama_venosa=$('#diagrama_venosa').val(signimage[1]);
$.ajax({
type: "POST",
url: "<?=base_url('saveController/saveSignature')?>",
data: {diagrama_venosa:diagrama_venosa},
success:function(data){
},
});
});
好像contain太大了,怎么解决?
【问题讨论】:
-
我知道我错了,我应该像这样更改代码:$('#diagrama_venosa').val(signimage[1]); var diagrama_venosa =$("#diagrama_venosa").val();
标签: jquery jsignature