C#中jQuery Ajax实例(二)
上一篇写了一个简单的Ajax异步程序,这一次同样是简单的程序,只不过这次先把参数传到一般处理程序(后缀为ashx)中,再把结果传回到页面。
1.html代码:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Ajax实例2</title>
<script src="Scripts/jquery-1.7.1.min.js"></script>
<script type="text/javascript">
$(function () {
$("#btn2").click(function () {
var params = {};//参数数组
params.action = "GetAjaxValue";
params.param1 = $("#txtParam1").val();
params.param2 = $("#txtParam2").val(); $.ajax({
url: "AjaxHandler.ashx",//指向一搬处理程序
data: params,
type: "POST",
async: true,
//contentType: "application/json; charset=utf-8",
dataType: "json",
beforeSend: function () {
//发送请求前执行
},
success: function (msg) {
if (msg.OperateResult == "success") {
if (msg.ResponseData.length > ) {
$("#result").html(msg.ResponseData);
}
}
},
error: function (e) {
alert("请求出错处理");
},
complete: function () {
}
});
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
参数1:<input type="text" id="txtParam1" value="" /><br />
参数2:<input type="text" id="txtParam2" value="" /><br />
<input type="button" id="btn2" value="提交"/><br />
<div id="result"></div>
</form>
</body>
</html>
2.新建一般处理程序AjaxHandler.ashx,代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Script.Serialization;//必须 namespace AjaxDemo
{
/// <summary>
/// AjaxHandler 的摘要说明
/// </summary>
public class AjaxHandler : IHttpHandler
{
private JavaScriptSerializer json = new JavaScriptSerializer();
private string operateSuccess = "success";
private string operateFailed = "false";
public void ProcessRequest(HttpContext context)
{
string jsonObject = string.Empty;
string action = context.Request["action"];
//context.Response.ContentType = "text/plain";//服务端需要返回一段普通文本给客户端
context.Response.ContentType = "application/json;charset=utf-8";//服务端需要返回一段json串给客户端 if (action == "GetAjaxValue")
{
try
{
string param1 = context.Request["param1"];
string param2 = context.Request["param2"];
string result = "第一个参数:" + param1 + "第一个参数:" + param2; jsonObject = json.Serialize(new { OperateResult = operateSuccess, ResponseData = result });
}
catch (Exception e)
{
jsonObject = json.Serialize(new { OperateResult = operateFailed, ResponseData = e.Message });
}
}
context.Response.Write(jsonObject);
} public bool IsReusable
{
get
{
return false;
}
}
}
}
3.界面以及运行结果:
5.注意:
在第1步代码中,我注释了contentType: "application/json; charset=utf-8" 这句话,因为加了这句,程序会无法把参数params 传到一般处理程序中。
C#中jQuery Ajax实例(二)的更多相关文章
- C#中jQuery Ajax实例(一)
目标:在aspx页面输入两参数,传到后台.cs代码,在无刷新显示到前台 下面是我的Ajax异步传值的第一个实例 1.前台html代码: <html xmlns="http://www. ...
- jquery ajax实例教程和一些高级用法
jquery ajax的调用方式:jquery.ajax(url,[settings]),jquery ajax常用参数:红色标记参数几乎每个ajax请求都会用到这几个参数,本文将介绍更多jquery ...
- jQuery Ajax 实例 ($.ajax、$.post、$.get)
jQuery Ajax 实例 ($.ajax.$.post.$.get) 转 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. ...
- JavaScript强化教程——jQuery AJAX 实例
什么是 AJAX?AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML).简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据 ...
- jQuery Ajax 实例 ($.ajax、$.post、$.get)【转载】
本文转载自:http://jun1986.iteye.com/blog/1399242 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的 ...
- jQuery Ajax 实例 ($.ajax、$.post、$.get)转
Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. 推荐一篇不错的jQuery Ajax 实例文章,忘记了可以去看看,地址为:ht ...
- jQuery AJAX实例
<html><head><title>jQuery Ajax 实例演示</title></head><script language= ...
- Ajax实例二:取得新内容
Ajax实例二:取得新内容 通过点击pre和next按钮,从服务器取得最新内容. HTML代码 <div id="slide">图片显示区</div> &l ...
- jQuery Ajax实例各种使用方法详解
在jquery中ajax实现方法分类很多种,如有:load.jQuery.get.jQuery.post.jQuery.getScript.jQuery Ajax 事件.jQuery.ajaxSetu ...
随机推荐
- windows phone7 豆瓣FM
HubTile参考了下,就做了一个豆瓣的FM应用 豆瓣的API在百度里查一下. 整个应用很简单,无非是解析豆瓣的JSON数据,然后读取,下载图片和歌单
- BestCoder Round #73
这场比赛打完后可以找何神玩了orz(orz)* T1Rikka with Chess 嘿嘿嘿.输出n/2+m/2即可. 我能说我智商捉鸡想了4min吗? T2Rikka with Graph 由于N个 ...
- ECMAScript继承
继承的定义 ECMAScript 实现继承可以从父类入手,所有开发者定义的类都可作为父类,出于安全考虑,本地类和宿主类不能作为父类,因为容易收到恶意攻击 创建只是用于给子类提供通用函数的父类被看作抽象 ...
- linux网络配置相关命令、虚拟网络接口eth0:0
网络接口(interface)是网络硬件设备在操作系统中的表示方法,比如网卡在Linux操作系统中用ethX,是由0开始的正整数,比如eth0.eth1...... ethX.而普通猫和ADSL的接口 ...
- winform学习之----Directory
Directory 文件夹目录 几个方法: CreateDirectory,delete,move,getfiles,exists 操作文件:用File 操作路径:用path 操作文件夹:Direct ...
- Bind的DNS解析设置forward - 阿权的书房
bind有一项功能是forward,也就是只是做dns缓存. 适用以下情况: 1 做临时测试,不想向上级申请修改ns记录2 不想向上级申请修改ns记录但希望交给另外的服务器处理3 只有有限的公网IP, ...
- Javascript 判断一个数字是否含有小数点
JavaScript 判断一个数字是否含有小数点,如果含有,则返回该数字:如果不含小数点,则小数点后保留两位有效数字: function hasDot(num){ if(!isNaN(num)){ r ...
- PHP 开发 APP 接口 学习笔记与总结 - 静态缓存
存储静态缓存即把缓存写入文件. file.php <?php class Cache{ //静态缓存文件后缀名 const EXT = 'txt'; //定义缓存文件存放路径 private $ ...
- nginx下使用memcache
nginx配置支持memcache,但不支持写,支持读,所以读取部分由程序设置,整个代码如下nginx的server段配置如下:#将静态文件放入memcachelocation ~* \.(gif|j ...
- include pointers as a primitive data type
Computer Science An Overview _J. Glenn Brookshear _11th Edition Many modern programming languages in ...