怎样使用jquery刷新验证码图片

How to refresh the src of <img /> with jQuery?

<img src="test.php" />

where test.php generates an image with a random number.

Itried :

$('#verifyimage').click(function() {
        $(this).attr('src',$(this).attr('src'));
    });

But it doesn't work.

Add a timestamp or a random number:

var timestamp = new Date().getTime();
$(this).attr('src',$(this).attr('src') + '?' +timestamp );

怎样使用jquery刷新验证码图片?

(使用ajax读取django返回的 image/gif,不可行。)


在点击图片时,在其Src属性上增加一个随机数,使用时间戳即可。


附代码:

/**
 * 验证码,提交前验证
 */
$(document).ready(function(){
    var validated = false;
    $.ajaxSetup({
      dataType: "json",
      beforeSend: function(xhr){
          var csrftoken = $.cookie('csrftoken');
          xhr.setRequestHeader("X-CSRFToken", csrftoken);
      }
    });
    // 验证码输入失去焦点
    $("#id_code").blur(function() {
        //alert(1);
        $.post(
            $("#id_url_check").val(),
            {"code": $("#id_code").val()},
            function (data) {
                if (data.status == true)
                    validated = true;
            }
        );
    });

    // 提交表单
    $("form").submit(function(event){
        if (validated)
           return true;
        else {
            $( "span" ).text( "验证码不正确。" ).show().fadeOut( 3000 );
            // 更换验证码
            var timestamp = new Date().getTime();
            $("#id_img_captcha").attr("src", $("#id_url_captcha").val() + '?' +timestamp );
            event.preventDefault();
            }
        }
    );

    // 点击更换验证码
    $('#id_img_captcha').click(function() {
        var timestamp = new Date().getTime();
        $(this).attr("src", $("#id_url_captcha").val() + '?'+ timestamp);
});
//
});


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值