最近在学习一般处理程序,也学习了一些jQuery的异步操作,于是就想着亲手做一个小的登陆,锻炼一下自己。

1、首先新建了一个项目LoginDemo,在此基础上又添加了一个一般处理程序BackLogin.ashx,具体代码如下

1
 ///<span style="font-family: Arial, Helvetica, sans-serif;" class="">没有牵扯到数据库查询,在这写的比较简单</span>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
public class BackLogin : IHttpHandler
    {
 
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            string username = context.Request.Form["username"];
            string password = context.Request.Form["password"];
            if (username == " " || password == " ")
            {
                context.Response.Write("请填写用户名或密码!");
            }
            else
            {
                if (username == "001" && password == "001")  
                {
                    context.Response.Write("success");
                }
                else
                {
                    context.Response.Write("用户名或密码错误,请重新登录!");
                }
            }
            context.Response.End();
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }

2、添加一个Web页面Login.aspx,作为登陆页面,浏览器效果图如下所示

3、三种实现方式

1. Form表单形式

1
2
3
4
5
    <form action="BackLogin.ashx" method="post">
        <input type="text" name="username" value="{num}">
        <input type="text" name="password">
        <input type="submit" value="登陆">
    </form>

2、异步Post方式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<script type="text/javascript">
    $(function () {
        $("#Login").click(function () {
            $.post("BackLogin.ashx", { "username": $("#username").val(), "password": $("#password").val() },
        function (msg) {
            if (msg == "success") {
                alert("登陆成功");
            }
            else if (msg == "用户名或密码错误,请重新登录!") {
                alert("登录失败!");
            }
            else {
                alert("请输入用户名和密码!");
            }
        });
        });
        // $("form1").submit();
    })
</script>

3、异步ajax

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<script type="text/javascript">
          $(document).ready(function () {
              $("#Login").click(function () {
                  $.ajax({
                      url: "BackLogin.ashx",
                      type: "POST",
                      data: "username=" + escape($('#username').val()) + "&password=" + escape($('#password').val()),
                      dataType: "text/plain",
                      async: "true",
                      success: function (msg) {
                          var data = eval("(" + msg.d + ")");
                          if (data == "success") {
                              alert("登陆成功!");
                          }
                          else {
                              alert("登录失败!");
                          }
                      }
                  });
              })
          });
    </script>

4、运行效果

输入001,0010用户名、密码时浏览器显示如下:

编程序一定要先有思路,在思路的引导下,细心再细心

.net中的一般处理程序实例的更多相关文章

  1. jQuery中on()方法用法实例详解

    这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能及各种常见的使用技巧,并对比分析了与bind(),live(),delegate()等方法的区别,需要的朋友可以参考下 本 ...

  2. Web API中的消息处理程序(Message Handler)

    一.消息处理程序的概念 信息处理程序(Message Handler)接收HTTP请求并返回一个HTTP响应的类.Message Handler继承 HttpMessageHandler 类. 通常, ...

  3. jQuery中on()方法用法实例

    这篇文章主要介绍了jQuery中on()方法用法,实例分析了on()方法的功能.定义及在匹配元素上绑定一个或者多个事件处理函数的使用技巧,需要的朋友可以参考下 本文实例讲述了jQuery中on()方法 ...

  4. Scala 深入浅出实战经典 第45讲: scala中context bounds代码实例

    王家林亲授<DT大数据梦工厂>大数据实战视频 Scala 深入浅出实战经典(1-64讲)完整视频.PPT.代码下载:百度云盘:http://pan.baidu.com/s/1c0noOt6 ...

  5. Spring中IoC的入门实例

    Spring中IoC的入门实例 Spring的模块化是很强的,各个功能模块都是独立的,我们可以选择的使用.这一章先从Spring的IoC开始.所谓IoC就是一个用XML来定义生成对象的模式,我们看看如 ...

  6. python中的类和实例

    今天花了两个多小时后搜索相关博客看了看python中有关类和实例的介绍,差不多大概明白了. python中的类和c++中的类是一样的,不同之处就是c++的类,如果含有成员变量,并且成员变量发生变化后, ...

  7. [Python][flask][flask-login]关于flask-login中各种API使用实例

    本篇博文跟上一篇[Python][flask][flask-wtf]关于flask-wtf中API使用实例教程有莫大的关系. 简介:Flask-Login 为 Flask 提供了用户会话管理.它处理了 ...

  8. 3 weekend110的hadoop中的RPC框架实现机制 + hadoop中的RPC应用实例demo

    hadoop中的RPC框架实现机制 RPC是Remotr Process Call, 进程间的远程过程调用,不是在一个jvm里. 即,Controller拿不到Service的实例对象. hadoop ...

  9. JavaScript中的事件处理程序

    JavaScript和HTML之间的交互是通过事件实现的.事件,就是文档或者浏览器窗口中发生的一些特定的交互瞬间.可以使用事件处理程序来预订事件,以便在事件发生的时候执行响应的代码.这种观察者模式的模 ...

随机推荐

  1. 镜像仓库管理:与Portus不得不说的那些事

    背景: 目前在做一个云计算相关的项目,其中有这样一个需求:每个平台用户都有自己的docker镜像仓库(docker registry),用户可以对自己的镜像仓库的push/pull权限进行管理,也就是 ...

  2. 高可用Kubernetes集群-15. 部署Kubernetes集群统一日志管理

    参考文档: Github:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsear ...

  3. 比较 VGG, resnet和inception的图像分类效果

    简介 VGG, resnet和inception是3种典型的卷积神经网络结构. VGG采用了3*3的卷积核,逐步扩大通道数量 resnet中,每两层卷积增加一个旁路 inception实现了卷积核的并 ...

  4. 作业 20181204-5 Final阶段贡献分配规则及实施

    此作业要求参见:[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2479] 小组介绍 组长:付佳 组员:张俊余 李文涛 孙赛佳 田良 于洋 ...

  5. Daily Scrum NO.6

    会议概况 这两日又是由于编译deadline和数据库课程设计使得我们的进度进行缓慢.但是项目的进程仍然在可掌控的范围之内,时间虽然紧,但是应该最终能够实现Beta版本. 这次会议我们总结了之前5个正常 ...

  6. 第二阶段站立会议alpha版总结

    一.会议过程 在完成第二次冲刺后,Alpha版本最终发布,我们对校园二手交易平台开发过程及产品存在的问题进行了激烈讨论.进行了我们的团队总结会议,会议中每个人先发表了个人对Alpha版开发过程中存在的 ...

  7. 使用Visual Studio 2013进行单元测试

    使用Visual Studio 2013进行单元测试 1.打开VS2013 --> 新建一个项目.这里我们默认创建一个控制台项目.取名为UnitTestDemo 2.在解决方案里面新增一个单元测 ...

  8. How to delete deployed process definition in activiti?

    https://community.alfresco.com/thread/219767-how-to-delete-deployed-process

  9. no-referrer-when-downgrade什么意思

    no referrer when downgrade的意思:降级时不推荐. 从一个网站链接到另外一个网站会产生新的http请求,referrer是http请求中表示来源的字段. no-referrer ...

  10. Pushlets 配置参数详解

      基于 Pushlets 的消息推送设计 Pushlets 是通过长连接方式实现“推”消息的.推送模式分为:Poll(轮询).Pull(拉).本文围绕 Pull 模式进行设计. 原理 客户端发起请求 ...