FireFox& IE Jquery无法正常工作

时间:2012-04-05 18:45:08

标签: php javascript jquery ajax

我为captcha创建了PHP GD图像,名为image.php的文件 每次生成动态验证码图像。


signup.php我有

<img alt="" src="image.php"> 
<input type="button" id="btn" value="cant read captcha">
<!--btn is to load another captcha-->

jscript.js

$("#btn").click(function(){  
    $("img").attr('src','image.php');
});

适用于Chrome,Safari和Opera,但不适用于IE和Firefox。

我该如何解决这个问题,还是有其他解决方案?

5 个答案:

答案 0 :(得分:3)

dom加载后代码是否正在运行?如果没有,请尝试:

$(function(){
  $("#btn").click(function(){ 
    $("img").attr('src','image.php');  
  });
});

您的控制台是否有错误?

答案 1 :(得分:2)

尝试在网址末尾添加随机数,这可能是缓存问题,例如

$("#btn").click(function(){  
    $(this).prev("img").attr('src','image.php?rnd='+Math.random());
});

答案 2 :(得分:1)

也许尝试这种添加查询字符串的方法来阻止浏览器缓存。

How to reload/refresh an element(image) in jQuery

答案 3 :(得分:1)

试试此代码

$(function(){

  $("#btn").live("click",function(){ 

       $("img").attr('src','image.php');  

  });
});

答案 4 :(得分:0)

$(“image”)。attr(“src”,“image.php?timestamp =”+ new Date()。getTime());


我认为这是一个缓存问题 firefox和ie不会一次又一次地从源中选择图像 但它从缓存加载
通过更改图像名称,它现在适用于所有浏览器 每个人都有一个