javascript - Ajax 请求失败

标签 javascript php jquery ajax

var x;

function addtoDom() {
    console.log("Adding to DOm");
    $("#capt").html('<div id="mduit"><img src="captcha1.jpg"></div>');
}

function request() {
    $.ajax({
        url: "mudit.php",
        type: "GET",
        success: function (data) {
            console.log(data);
            x = data;
            addtoDom();
        }
    });
}

request();

此处为 Mudit.php

<?
// header("Content-type:image/jpeg");

session_start();
$img = imagecreate(150,60);
imagecolorallocate($img,200,255,200);
$abc = rand();

while ($abc < 10000) {
    $abc = rand();  
}

$_SESSION['Captcha_num'] = $abc;
imagettftext($img,35,0,0,40, 89,"abcd.ttf", $abc);
imagejpeg($img,"captcha1.jpg",65);
echo $abc;
?>

这里的代码在 Chrome 中运行良好,但在 Firefox 中不起作用。 即在点击刷新按钮刷新图像时..验证码在 chrome 中刷新 但在 Firefox 中不行。

最佳答案

这可能是缓存问题。试试这个:

function addtoDom() {
    $("#capt").html('<div id="mduit"><img src="captcha1.jpg?' + +new Date() +  '"></div>');
}

由于每次点击都有新的 GET 参数,这里 captcha1.jpg 将被强制刷新。

也不要这样做:

echo $abc;

这没有意义,因为它是 secret 的,并且您不想向客户提供此值。

关于javascript - Ajax 请求失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21349777/

相关文章:

javascript - 不使用 Jquery 更改 Dom 事件 TextArea

javascript - jQuery 更改以返回选中或未选中状态

javascript - 如果悬停速度非常快,Jquery mousemove 会错过一些单元格

javascript - HTML 5 视频到 Canvas 缩放问题

javascript - Rails 5 使用 turbolink 加载 JS

javascript - 光标通过 CSS :hover. 更改,无需移动鼠标即可从 DOM 中删除元素。更新鼠标光标?

javascript - getComputedStyle (or) $.css(map) <-- 获取每个样式声明

php - 在 Ubuntu 服务器上安装 XHProf

javascript - PHP 是否包含 HTTP 请求?

php - 使用 jQuery 和 PHP 进行 HTML 5 拖放上传