手机发送短信验证码的部分代码

来源:互联网 发布:如何看待网络用语 编辑:程序博客网 时间:2024/06/06 17:33
<input  name="htmlCode" id="htmlCode" type="text" class="fl_input" size="36" />
<input  type="button" value="获取短信验证码" onclick="getVerify(this)"/>

<script type="text/javascript"> 
    //获取验证码开始
    var nums = 120;
    var clock = '';
    var btn;
    function getVerify(thisBtn){
        var mobile = $("#item_consult_phone").val();
        if(mobile==""){
            alert("请输入手机号码!");
            document.all.item_consult_phone.focus();
            return false;
        }
        if(mobile!=""){
            var reg = /^([0-9]{11})?$/;
            var flag = reg.test(mobile);
            if(!flag){
                alert("请输入正确的手机号码格式!");
                document.all.item_consult_phone.focus();
                return false;
            }else{
                var flag = true;
                $.ajax({
                    async: false,
                    type: "POST",
                    cache: false,
                    url: "sms!getVerify.action",
                    data: {
                        mobile:mobile
                    },
                    dataType:"json",
                    success: function(result){
                        if(result == "1"){
                            alert("短信验证码已成功发送至您的手机,请将其填写在输入框!");
                        }else{
                            flag = false;
                            alert("短信验证码发送失败!");
                        }
                    }
            });
            btn = thisBtn;
            btn.disabled = true; //将按钮置为不可点击
            btn.value = nums+'秒后可重新获取';
            clock = setInterval(doLoop, 1000); //一秒执行一次

            return flag;
        }
    }
}

function doLoop()  {
    nums--; 
    if(nums > 0){
        btn.value = nums+'秒后可重新获取';  
        }else{ 
            clearInterval(clock); //清除js定时器  
            btn.disabled = false;   
            btn.value = '点击发送验证码';  
            nums = 120; //重置时间  
            }  
    }
</script>


后台部分代码:
// 生成6位随机数验证码
            String verifyTemp = (Math.random()*9+1)*100000+"";
            String verify = verifyTemp.substring(0,6);

            String mobile = request.getParameter("mobile");
            session.setAttribute("verify",verify);
            result = SendSMS.send(mobile, "您的验证码为:"+verify+",此验证码30分钟内有效。", "1");

原创粉丝点击