上一篇写了一个简单的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实例(二)的更多相关文章

  1. C#中jQuery Ajax实例(一)

    目标:在aspx页面输入两参数,传到后台.cs代码,在无刷新显示到前台 下面是我的Ajax异步传值的第一个实例 1.前台html代码: <html xmlns="http://www. ...

  2. jquery ajax实例教程和一些高级用法

    jquery ajax的调用方式:jquery.ajax(url,[settings]),jquery ajax常用参数:红色标记参数几乎每个ajax请求都会用到这几个参数,本文将介绍更多jquery ...

  3. jQuery Ajax 实例 ($.ajax、$.post、$.get)

    jQuery Ajax 实例 ($.ajax.$.post.$.get) 转 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. ...

  4. JavaScript强化教程——jQuery AJAX 实例

    什么是 AJAX?AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML).简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据 ...

  5. jQuery Ajax 实例 ($.ajax、$.post、$.get)【转载】

    本文转载自:http://jun1986.iteye.com/blog/1399242 Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的 ...

  6. jQuery Ajax 实例 ($.ajax、$.post、$.get)转

    Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦,Jquery大大简化了我们的操作,不用考虑浏览器的诧异了. 推荐一篇不错的jQuery Ajax 实例文章,忘记了可以去看看,地址为:ht ...

  7. jQuery AJAX实例

    <html><head><title>jQuery Ajax 实例演示</title></head><script language= ...

  8. Ajax实例二:取得新内容

    Ajax实例二:取得新内容 通过点击pre和next按钮,从服务器取得最新内容. HTML代码 <div id="slide">图片显示区</div> &l ...

  9. jQuery Ajax实例各种使用方法详解

    在jquery中ajax实现方法分类很多种,如有:load.jQuery.get.jQuery.post.jQuery.getScript.jQuery Ajax 事件.jQuery.ajaxSetu ...

随机推荐

  1. 洛谷 P1118 数字三角形游戏 Label:dfs

    题目描述 有这么一个游戏: 写出一个1-N的排列a[i],然后每次将相邻两个数相加,构成新的序列,再对新序列进行这样的操作,显然每次构成的序列都比上一次的序列长度少1,直到只剩下一个数字位置.下面是一 ...

  2. 【BZOJ】1051: [HAOI2006]受欢迎的牛(tarjan)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1051 这题还好-1A了..但是前提还是看了题解的 囧.....一开始认为是并查集,oh,不行,,无法 ...

  3. Splay 伸展树

    废话不说,有篇论文可供参考:杨思雨:<伸展树的基本操作与应用> Splay的好处可以快速分裂和合并. ===============================14.07.26更新== ...

  4. Log4j日志级别

    日志记录器(Logger)是日志处理的核心组件.log4j具有5种正常级别(Level). 日志记录器(Logger)的可用级别Level (不包括自定义级别 Level), 以下内容就是摘自log4 ...

  5. 过滤html字符的方法

    昨天在看公司网站的产品详细页面,发现只有一个公司的JS产品轮换特效不会出,找了半天,程序都是一样的,原因是什么呢?原来是公司的别名是xiandahg,里面含有and字符被过滤掉了. public st ...

  6. MUI - Scroll插件的使用

    http://dev.dcloud.net.cn/mui/ui/#scroll 神坑1:如果在vuejs中使用,那么需要配合mui.ready(function(){}) 才能找到dom对象,具体de ...

  7. OS | 哲学家问题

    哲学家进餐问题: (1) 在什么情况下5 个哲学家全部吃不上饭?考虑两种实现的方式,如下:A.算法描述: void philosopher(int i) {/*i:哲学家编号,从0 到4*/ whil ...

  8. Scrum会议1

    小组名称:天天向上 项目名称:连连看 参会成员:王森(Master)张金生 张政 栾骄阳 时间:2016.10.16 会议内容: 1.连连看游戏选取图片素材. 2.连连看的界面设计 3.连连看具体的功 ...

  9. windows2003下安装apache

    php建议在http://www.apachelounge.com/ 下载apache的二进制版本,因为提供了不同VC版本.不懂,照做. 因为是在虚拟机2003上面搞的,需要装VC2010版本. 下载 ...

  10. PHP / JavaScript / jQuery 表单验证与处理总结: 第①部分 PHP 表单验证与处理

    PHP VERSION = 5.3.10 一.关于 $_REQUEST PHP 文档关于 $_REQUEST 的说明: 说明 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组. ...