使用Jquery在IE和Firefox中无法动态更改图像src

Mad*_*ita 7 javascript jquery

我正在为电子邮件实现验证码.当点击linkEmail按钮时,电子邮件模式将打开.在点击linkEmail按钮点击时,我必须设置由处理程序(CaptchaGenerator.ashx)生成的验证码图像.这是代码.

$(".linkEmail").click(function () {
  //Load captcha image
  $('.imgCaptcha').attr('src', '/Custom/AppCode/Utilities/CaptchaGenerator.ashx');
  $('#emailModal').modal();
});
Run Code Online (Sandbox Code Playgroud)

上面的代码在crome中正常工作,但在IE和Firefox中无法正常工作.虽然我尝试了以下,但没有运气.

HTML:

<p id="captchacontainerp" class="captchacontainer"></p>
-------------------------------------------------------------
$('#captchacontainerp').prepend($("<img id='imCaptcha' class='imgCaptcha' src='/Custom/AppCode/Utilities/CaptchaGenerator.ashx'></img>"));
-------------------------------------------------------------
var img = $('<img id="imCaptcha" class="imgCaptcha">');
img.attr('src', '/Custom/AppCode/Utilities/CaptchaGenerator.ashx');
$('#captchacontainerp').empty();
img.appendTo('#captchacontainerp');
---------------------------------------------------------------
$('#captchacontainerp').empty();
$('#captchacontainerp').append($("<img id='imCaptcha' class='imgCaptcha' src='/Custom/AppCode/Utilities/CaptchaGenerator.ashx'></img>"));
Run Code Online (Sandbox Code Playgroud)

A. *_*lff 8

IE缓存所有GET请求,因此请在您的请求URL中添加时间戳,例如:

$(".linkEmail").click(function () {
   //Load captcha image
   $('.imgCaptcha').attr('src', '/Custom/AppCode/Utilities/CaptchaGenerator.ashx?'+new Date().getTime());
   $('#emailModal').modal();
});
Run Code Online (Sandbox Code Playgroud)