vertification.js 2.72 KB
/**
 * 验证手机
 * @author: xuqi<qi.xu@yoho.cn>
 * @date: 2015/12/14
 */

var $ = require('yoho.jquery');

var $sc = $('#send-captcha'),
    $msgTip = $('#captcha-tip'),
    $errTip = $('#err-tip'),
    $next = $('#next-step'),
    seconds,
    itime;

$sc.click(function() {
    $.post('/passport/register/authcode', {
        mobile: $('#mobile').val(),
        area: $('#area').val(),
        captcha: $('#captchaPic').val(),
        project: 'repassword'
    }, function(jsonData) {
        if (jsonData.code === 200) {
            $errTip.hide();
            if ($(this).hasClass('disable')) {
                return;
            }
            seconds = 60;

            //$sc.addClass('disable').prop('disabled', true);
            $sc.addClass('disable').attr('disabled', true);
            $msgTip.removeClass('hide');

            $sc.val(seconds-- + '秒后可重新操作');
            itime = setInterval(function() {
                if (seconds === 0) {
                    clearInterval(itime);

                    //$sc.val('发送验证码').removeClass('disable').prop('disabled', false);
                    $sc.val('发送验证码').removeClass('disable').removeAttr('disabled');
                } else {
                    $sc.val(seconds-- + '秒后可重新操作');
                }
            }, 1000);
        } else {
            $(this).addClass('error');
            $errTip.removeClass('hide').text('发送失败');
        }
    });
});

if ($(this).hasClass('disable')) {
    return;
}
seconds = 60;

//$sc.addClass('disable').prop('disabled', true);
$sc.addClass('disable').attr('disabled', true);
$msgTip.removeClass('hide');

$sc.val(seconds-- + '秒后可重新操作');
itime = setInterval(function() {
    if (seconds === 0) {
        clearInterval(itime);

        //$sc.val('发送验证码').removeClass('disable').prop('disabled', false);
        $sc.val('发送验证码').removeClass('disable').removeAttr('disabled');
    } else {
        $sc.val(seconds-- + '秒后可重新操作');
    }
}, 1000);


$('#captcha').keyup(function() {
    var v = $.trim($(this).val());

    if (v !== '') {

        //添加验证码正确验证
        //$next.removeClass('disable').prop('disabled', false);
        $next.removeClass('disable').removeAttr('disabled');
    } else {

        //$next.addClass('disable').prop('disabled', true);
        $next.addClass('disable').attr('disabled', true);
    }
}).blur(function() {
    var v = $.trim($(this).val());

    if (v === '') {

        //添加验证码正确验证
        $(this).addClass('error');
        $errTip.removeClass('hide');
    } else {
        $(this).removeClass('error');
        $errTip.addClass('hide');
    }
}).focus(function() {
    $(this).removeClass('error');
});