我有一个脚本可以在文件夹中上传文件,输入字段和画布。它的工作原理除了当我上传我的画布时,它会在创建文件夹之前上传它,因为它什么都没有。我已经解决了它需要在表单和所有图像提交后上传..但是这会导致页面刷新并重新设置我的画布绘图(到空白画布)。我需要一种方法来记住页面刷新时的画布。这是我的代码:
<?php if ($savescript == 1) { ?>
<script type="text/javascript">
$(document).ready(function() {
var myDrawing = document.getElementById("simple_sketch");
var drawingString = myDrawing.toDataURL("image/jpg");
var postData = "canvasData="+drawingString;
var ajax = new XMLHttpRequest();
ajax.open("POST",'saveimage.php',true);
ajax.setRequestHeader('Content-Type', 'canvas/upload');
ajax.onreadystatechange=function()
{
if (ajax.readyState == 4)
{alert("image saved");}
}
ajax.send(postData);
});
</script>
<?php }; ?>
$ savescript基于隐藏的输入字段,其值为1,因此它只会在提交表单后发送
**在此处插入标准HTML页面代码**
然后这是我的画布,它位于一个表格
中<canvas id="simple_sketch" name="simple_sketch" width="800" height="300"></canvas>
<script type="text/javascript">
$(function() {
$('#simple_sketch').sketch();
});
</script>
那么如何让画布记住页面重新加载之前绘制的内容?
需要哈尔普:p
答案 0 :(得分:2)
页面是否需要刷新?如果您已经在进行ajax调用,则可能更容易使用preventDefault
来停止刷新并让其余代码执行。然后,您将能够保留对画布对象的引用。