zoukankan      html  css  js  c++  java
  • aspx页面调用发送邮件验证码(结合前两篇)

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript" language="javascript">
            var times = 60;
            function FunCanUse() {
                if ($("#Email").val() == "") {
                    $("#<%=this.Label1.ClientID %>").html("请输入邮箱");
                }
                else {
                    var t;
                    var partten = /^(w)+(.w+)*@(w)+((.w+)+)$/;
                    if (!partten.test(document.getElementById("Email").value)) {
                        return;
                    }
                    if (times == 60) {
                        var Email = $("#Email").val();
                        $.ajax({
                            type: "GET",
                            dataType: "json",
                            url: '<%=ResolveUrl("~")%>EmailRandCode.ashx',
                            data: "email=" + encodeURIComponent(Email) + "&action=delete&T=" + new Date(),
                            success: function (result) {
                            }
                        })
                    }
                    document.getElementById('btnSendCheckCode').style.display = "none";
                    times = times - 1;
                    document.getElementById('btnCode').style.display = "block";
                    document.getElementById('btnCode').value = times + "秒后重新获取";


                    t = setTimeout('FunCanUse()', 1000); //1秒后启用




                    if (times == 0) {
                        clearTimeout(t);
                        times = 60;
                        document.getElementById('btnSendCheckCode').value = '重新发送验证码';
                        document.getElementById('btnSendCheckCode').style.display = "block";
                        document.getElementById('btnCode').style.display = "none";
                    }
                }


            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <label class="lb">
                <span class="required">*</span>邮箱</label>
            <input id="Email" type="text" runat="server" class="ipt-t" tabindex="2" placeholder="请输入邮箱" />
            &nbsp;&nbsp;&nbsp;&nbsp;<asp:Label ID="Label1" runat="server" Text="" ForeColor="Red"></asp:Label>
            <a id="btnSendCheckCode" onclick="FunCanUse()" href="#" style="display: block; 80px;
                margin-left: 280px; font-size: 12pt;">发送验证码</a>
            <input id="btnCode" type="button" value="" style=" 180px; margin-top: 5px;" />
        </div>
        </form>
    </body>

    </html>

    aspx.sc 后台验证

    页面验证(aspx页面)

       if (Request.Cookies["EmailRandCode"] != null)
            {
                string strCheckCode = HttpUtility.UrlDecode(Request.Cookies["EmailRandCode"].Values[0].ToString());
                string strCurDateTime = HttpUtility.UrlDecode(Request.Cookies["EmailRandCode"].Values[1].ToString());
                //判断是否过期,若不过期,
                DateTime dt = DateTime.Parse(strCurDateTime);
                DateTime dtNow = System.DateTime.Now;
                TimeSpan spT = dtNow - dt;
                if (spT.TotalSeconds <= 180)
                {
                    if (strCheckCode != txtCheckCode.Text.Trim())
                    {
                        this.AddResponseWriteScript("alert('验证码错误!');");
                        return;
                    }
                }
                else if (txtCheckCode.Text.Trim() == "")
                {
                    this.AddResponseWriteScript("alert('请输入验证码!');");
                    return;


                }
                else
                {
                    this.AddResponseWriteScript("alert('验证码过期,请重新获取!');");
                    return;
                }
            }
            else if (txtCheckCode.Text.Trim() == "")
            {
                this.AddResponseWriteScript("alert('请输入验证码!');");
                return;
            }
            else
            {
                this.AddResponseWriteScript("alert('验证码过期,请重新获取!');");
                return;
            }

  • 相关阅读:
    揭秘!阿里实时数仓分布式事务Scale Out设计
    ElementUI中使用el-time-picker向SpringBoot传输24小时制时间参数以及数据库中怎样存储
    Vue中实现清空数组和清空el-table
    Vue中foreach数组与js中遍历数组的写法
    Vue中向js中传递参数并在js中定义对象并转换参数
    若依管理系统导出Excel时添加没有的列和关联码表显示中文进行导出
    MyBatis中传递数组参数和List参数时if-test判空和判断长度的写法
    ElementUI中显示是否以及SpringBoot中怎样存储实体类属性和数据库怎样设计字段
    ElementUI中的el-form怎样格式化显示1和0为是和否
    Vue中通过Axios向SpringBoot发送get和post请求
  • 原文地址:https://www.cnblogs.com/duanlinlin/p/5026084.html
Copyright © 2011-2022 走看看