jquery訪问ashx文件演示样例
.ashx 文件用于写web handler的。.ashx文件与.aspx文件类似,能够通过它来调用HttpHandler类,它免去了普通.aspx页面的控件解析以及页面处理的过程。事实上就是带HTML和C#的混合文件。
.ashx文件适合产生供浏览器处理的、不须要回发处理的数据格式。比如用于生成动态图片、动态文本等内容。非常多须要用到此种处理方式。此文档提供一个简单的调用ashx文件的Demo,并贴出重要文件的源代码。
下面为Demo中Login.ashx文件里的源代码:
- public class Login : IHttpHandler {
- public void ProcessRequest (HttpContext context) {
- context.Response.ContentType = "application/json";
- //GET方式获取传递的数据
- //string username = context.Request.QueryString["username"];
- //string password = context.Request.QueryString["password"];
- //POST方式获取传递的数据
- string username = context.Request.Form["username"];
- string password = context.Request.Form["password"];
- string message = null;
- if (string.IsNullOrEmpty(username))
- {
- message = "用户名不能为空";
- context.Response.Write("{\"success\":false,\"message\":\"" + message + "\"}");//此JSON格式很重要,否则会运行jquery的的error函数
- context.Response.End();
- }
- if (string.IsNullOrEmpty(password))
- {
- message = "密码不能为空";
- context.Response.Write("{\"success\":false,\"message\":\"" + message + "\"}");
- context.Response.End();
- }
- if (!string.IsNullOrEmpty(username) && !string.IsNullOrEmpty(password))
- {
- if (username.ToUpper() == "ADMIN" && password == "123")
- {
- message = "登录成功";
- context.Response.Write("{\"success\":true,\"message\":\"" + message + "\"}");
- }
- else
- {
- message = "用户名或密码错误";
- context.Response.Write("{\"success\":false,\"message\":\"" + message + "\"}");
- }
- }
- context.Response.End();
- }
- public bool IsReusable {
- get {
- return false;
- }
- }
- }
下面为html中的源代码:
- <!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>
- <title>jsquery訪问ashx文件</title>
- <script language="javascript" type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
- <script language="javascript" type="text/javascript">
- function login() {
- $.ajax({
- url: 'common/handler/Login.ashx',
- type: 'POST',
- data: { 'username': $("#txtUsername").val(), 'password': $("#txtPassword").val() },
- dataType: 'json',
- timeout: 50000,
- //contentType: 'application/json;charset=utf-8',
- success: function (response) {
- alert(response.message);
- },
- error: function (err) {
- alert("运行失败");
- }
- });
- }
- </script>
- </head>
- <body>
- <div style="width:400px; height:300px; margin:0 auto; background:#c0c0c0;">
- <dl style=" width:270px;">
- <dd><span>用户名:</span><input type="text" style=" width:150px;" id="txtUsername" /></dd>
- <dd><span>密 码:</span><input type="password" style=" width:150px;" id="txtPassword" /></dd>
- <dd><input type="button" style=" width:65px; height:23px; float:right;" onclick="login()" value="登录" /></dd>
- </dl>
- </div>
- </body>
- </html>
jquery訪问ashx文件演示样例的更多相关文章
- RPM安装包-Spec文件參数具体解释与演示样例分析
spec文件是整个RPM包建立过程的中心,它的作用就如同编译程序时的Makefile文件. 1.Spec文件參数 spec文件包括建立一个RPM包必需的信息,包括哪些文件是包的一部分以及它们安装在哪个 ...
- java文件夹相关操作 演示样例代码
java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...
- JSP中文件的上传于下载演示样例
一.文件上传的原理 1.文件上传的前提: a.form表单的method必须是post b.form表单的enctype必须是multipart/form-da ...
- java 线程 原子类相关操作演示样例 thinking in java4 文件夹21.3.4
java 线程 原子类相关操作演示样例 package org.rui.thread.volatiles; import java.util.Timer; import java.util.Time ...
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
- libcurl使用演示样例
简要说明:C++使用libcurl訪问"www.baidu.com".获取返回码和打印出http文件 /* * @ libcurl使用演示样例 * @ 2014.04.29 * @ ...
- 让你提前认识软件开发(19):C语言中的协议及单元測试演示样例
第1部分 又一次认识C语言 C语言中的协议及单元測试演示样例 [文章摘要] 在实际的软件开发项目中.常常要实现多个模块之间的通信.这就须要大家约定好相互之间的通信协议,各自依照协议来收发和解析消息. ...
- Android平台调用Web Service:演示样例
近期在学习Android,随着移动设备的流行,当软件走上商业化的道路,为了争夺市场,肯定须要支持Android的,所以開始接触了Android,只是仅仅了解皮毛就好,由于我们要做管理者嘛,懂点Andr ...
- [hadoop系列]Pig的安装和简单演示样例
inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ).(来源:http://blog.csdn.net/inkfish) Pig是Yaho ...
随机推荐
- 【代码笔记】iOS-键盘自适应弹出
一,效果图. 二,工程图. 三,代码. ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIVie ...
- 标准工作流(AWE)邮件通知
今天遇到一个问题,UAT环境收不到流程待办,最终审批,最终拒绝等邮件. 检查了PT_WF_NOTIFICATION包的Notification类中的Send方法,发现如果app服务器在psappsrv ...
- EL表达式和标签
1.什么是EL expression language 表达式语言 特点: 语言简单,使用方便 .${表达式}. 提供自动类型转换的功能 如果返回结果为null时 String -- ”” Numbe ...
- Prometheus Node_exporter 之 Network Traffic Detail
Network Traffic Detail /proc/net/dev 1. Network Traffic by Packets type: GraphUnit: packets/secLabel ...
- 更改 Windows VM 的可用性集
以下步骤说明如何使用 Azure PowerShell 来更改 VM 的可用性集. 只能在创建 VM 时将 VM 添加到可用性集. 如果要更改可用性集,必须将虚拟机删除,并重新创建虚拟机. 使用 Po ...
- 【mysql数据库】Linux下mysql安装连接全过程(含有问题详解)
本次安装操作在腾讯云上实现(版本:CentOS Linux release 7.4.1708 (Core) ). 根据教程实现(中途各种挖坑,填坑...),地址:http://www.runoob.c ...
- SQL Server 请求失败或服务未及时响应。有关详细信息,请参见事件日志或其它适合的错误日志
在打开数据库的时候,突然出现异常错误,然后我去关闭sql server 服务,然后重启服务的时候,不能重启,出现以下错误 “请求失败或服务未及时响应.有关详细信息,请参见事件日志或其它适合的错误日志” ...
- SELECT查询结果集INSERT到数据表
简介 将查询语句查询的结果集作为数据插入到数据表中. 一.通过INSERT SELECT语句形式向表中添加数据 例如,创建一张新表AddressList来存储班级学生的通讯录信息,然后这些信息恰好存在 ...
- mysql中InnoDB表为什么要建议用自增列做主键
InnoDB引擎表的特点 1.InnoDB引擎表是基于B+树的索引组织表(IOT) 关于B+树 (图片来源于网上) B+ 树的特点: (1)所有关键字都出现在叶子结点的链表中(稠密索引),且链表中的关 ...
- [IDEA_2] IDEA 问题合集
1. IDEA 通过 Maven 导入的依赖包下面存在红色波浪线 问题描述: 创建的 Maven Project 在添加相关依赖后自动下载,自动添加的依赖包的下面存在红色波浪线,在使用过程中存在问题, ...