【发布时间】:2014-05-10 10:57:43
【问题描述】:
我正在尝试通过 AJAX 将 canvas.toDataUrl() 发送到 php 页面。
这是我的尝试:
JavaScript 代码:
function showUser() {
str = "url="+canvas.toDataUrl();
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","file.php?"+str,true);
xmlhttp.send();
}
php:
<?php
$url = $_GET['url'];
echo "$url";
?>
上面的代码似乎不起作用,虽然我做了完全相同的事情,但使用了一个字符串值,如下所示:
function showUser() {
str = "url=12345";
if (window.XMLHttpRequest) {
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else { // code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","file.php?"+str,true);
xmlhttp.send();
}
这个很好用, 但是当我使用 canvas.toDataUrl() 它不起作用!?为什么?
还有其他方法可以将 canvas.toDataUrl() 发送到 php 吗?
谢谢
【问题讨论】:
-
IE 8-不支持
<canvas>,所以你可以从你的代码中删除旧的浏览器位,还有,你在哪里vardxmlhttp和str? -
在同一文件夹中的 html 文件中(我不确定我是否理解了这个问题)谢谢
标签: javascript php ajax html canvas