<%@ 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; width: 80px;
            margin-left: 280px; font-size: 12pt;">发送验证码</a>
        <input id="btnCode" type="button" value="" style="width: 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;
        }

aspx页面调用发送邮件验证码(结合前两篇)的更多相关文章

  1. 前两篇转载别人的精彩文章,自己也总结一下python split的用法吧!

    前言:前两篇转载别人的精彩文章,自己也总结一下吧! 最近又开始用起py,是为什么呢? 自己要做一个文本相似度匹配程序,大致思路就是两个文档,一个是试题,一个是材料,我将试题按每题分割出来,再将每题的内 ...

  2. aspx页面调用webapi接口报错:远程服务器返回错误:(500)内部服务器错误

    代码在运行到response = (HttpWebResponse)request.GetResponse();就开始报错 原因:可能因为所调用的接口不存在或者接口中存在错误,可用postman测试接 ...

  3. SpringMvc支持Ajax概述【见前两篇随笔--详述前后数据互通】

    1.原生javaWeb:不再用 1).导入GSON: 2).返回的数据用GSON转成json 3).写出去: 2.SpringMVC快速的完成ajax功能? 导包 jackson-annotation ...

  4. 微信公众号支付(三):页面调用微信支付JS并完成支付

    一.调用微信的JS文件 1.首先要绑定[JS接口安全域名],“公众号设置”的“功能设置”中 2.引入JS文件 备注:支持使用 AMD/CMD 标准模块加载方法加载 <script type=&q ...

  5. 用mvc模式,整理前两次的代码并增加登陆注册

    简单的servlet连接mysql数据库 使用mvc的登录注册 commons-dbutils-1.6 mysql-connector-java-5.1.40-bin c3p0-0.9.5.2 mch ...

  6. wp-query调用前几篇文章的方法

    ---恢复内容开始--- 利用强大的wp-query函数调用指定分类下的前几篇文章,下面的代码表示调用的是分类ID4下的前两篇文章. <?php $cunt_wenzhen = array('c ...

  7. Jquery Ajax调用aspx页面方法

    Jquery Ajax调用aspx页面方法 在asp.net webform开发中,用jQuery ajax传值一般有几种玩法 1)普通玩法:通过一般处理程序ashx进行处理: 2)高级玩法:通过as ...

  8. webform工程中aspx页面为何不能调用appcode文件夹下的类(ASP.NET特殊文件夹的用法)

    App_code 只有website类型的工程才有效. App_Code 下创建的.cs文件仅仅是“内容”不是代码.你设置那个文件为“编译”就行了. 其他特殊文件夹 1. Bin文件夹 Bin文件夹包 ...

  9. jquery.ajax请求aspx和ashx的异同 Jquery Ajax调用aspx页面方法

    1.jquery.ajax请求aspx 请求aspx的静态方法要注意一下问题: (1)aspx的后台方法必须静态,而且添加webmethod特性 (2)在ajax方法中contentType必须是“a ...

随机推荐

  1. 【MongoDB】MongoDB 3.2 SCRAM-SHA-1验证方式

    新版本已取消addUser方法,改使用createUser方法 官方地址:https://docs.mongodb.com/manual/tutorial/create-users/ 官方地址:htt ...

  2. 关于iOS10的允许访问用户数据产生的问题

    不知道这个问题是什么时候出现的,直到我重写项目已应对IPv6的审核. 先前没有加引导页面,打开app直接进入主控制器.当弹出允许访问用户数据窗口的时候,主页面的数据是不加载的. 当用户未允许访问数据之 ...

  3. TCP、UDP、IP 协议分析

    http://rabbit.xttc.edu.cn/rabbit/htm/artical/201091145609.shtml  http://bhsc881114.github.io/2015/06 ...

  4. 阅读{django-restframework}源码[generics.py]学习笔记

    首先django-restframework是基于django的一个框架.   mixins.py中开头是这样写的: Basic building blocks for generic class b ...

  5. jsvascript—谜之this?

    原文:Gentle explanation of ‘this’ keyword in JavaScript 1. 迷之 this 对于刚开始进行 JavaScript 编程的开发者来说,this 具有 ...

  6. ODAC ,MYDAC版本问题

    已确定D7下,ODAC.v6.80.0.47  和 MyDACv5.80.0.47  可以一起用

  7. javascript date picker

    一个简洁的date picker <html><head><meta http-equiv="Content-Type" content=" ...

  8. ---arch linux 下装wordpress

    首先要先装apach和phphttps://translate.google.com/translate?hl=zh-CN&sl=de&tl=en&u=https%3A%2F% ...

  9. SQL Server 的表数据简单操作

    --表数据操作----添加表数据----向现有表添加数据--[use 要操作数据表的数据库名称go]insert [into] 数据表 [(字段名1,字段名2,字段名3, ...)] values(值 ...

  10. [Tomcat 源码分析系列] (一) : Tomcat 启动脚本-startup.bat

    概述 我们通常使用 Tomcat 中的 startup.bat 来启动 Tomcat. 但是这其中干了一些什么事呢? 大家都知道一个 Java 程序需要启动的话, 肯定需要 main 方法, 那么这个 ...