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 ...
随机推荐
- CSS应用的小问题总结
1.两个元素换行书写时,在实际的布局中展示为两个元素之间多了一个区间(这个区间通常是因为代码在换行时,解析会自动默认为一个空格字符),所以在实际应用时,如果想要将两个元素完全无缝隙的放置在一起并排显示 ...
- npm、cnpm、bower安装区别
简单地说,就是帮你下载好你需要的css或者js库,而且三者功能也都是一样的.那为什么要下载这3个不同的呢?据说npm容易被墙……而cnpm是淘宝的镜像,所以通常用cnpm代替npm.至于bower,是 ...
- JSP基本语法总结【1】(jsp工作原理,脚本元素,指令元素,动作元素)
时隔半年,回头对jsp复习整理一下,温故而知新. jsp工作原理: jsp服务器管理jsp页面分两个阶段:转换阶段(translation phase)和执行阶段(execution phase). ...
- SQL语句创建数据库及表
--删除数据库drop database ArchiveDev; --建立归档数据库CREATE DATABASE ArchiveDev; USE ArchiveDev;GO --1.建立归档计划执行 ...
- Maven入门详情
Maven的作用 在开发中,为了保证编译通过,我们会到处去寻找jar包,当编译通过了,运行的时候,却发现"ClassNotFoundException",我们想到的是,难道还差ja ...
- python基础一数据类型之集合
摘要: python基础一中介绍数据类型的时候有集合,所以这篇主要讲集合. 1,集合的定义 2,集合的功能 3,集合的方法 1,集合的定义 list1 = [1,4,5,7,3,6,7,9] set1 ...
- mongodb的搭建
1, vi /etc/yum.repos.d/mongodb-org-3.2.repo 2, 添加如下内容 [mongodb-org-3.2] name=MongoDB Repo ...
- ubuntu下配置时间同步NTP
1参考文献: 1.鸟哥的Linux私房菜:第十五章.时间服务器: NTP 服务器(强烈建议看完) 2.http://www.crsay.com/wiki/wiki.php/server/centos/ ...
- 解决VB6.0中不能加载MSCOMCTL.OCX的错误提示
VB6.0毕竟是很古老的开发工具了,其对所使用的第三方组件依赖性比较强,例如在打开从其它电脑上拿来的VB6.0的软件(系统)的工程文件(源代码)时,经常会遇到"不能加载MSCOMCTL.OC ...
- sysbench安装、使用、结果解读
sysbench是一个模块化的.跨平台.多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况.目前sysbench代码托管在github上,项目地址:https://github.c ...