ajax代码

 $.ajax({
type: "GET",
url: "/AjaxHandler/GetPluginCode.ashx",
data: "templateid=" + templateid + "&templatepath=<%=templatePath%>&shopgroupid=" + $("#hidShopGroupID").val(),
cache: false,
success: function (msg) {
var results = JSON.parse(msg);
if (results.Key == "success") {
var result = results.Value;
               }
            }
})

    原则:利用对象来判断返回结果的状态(以前用字符串分割来处理,会有问题)

Handler代码

    定义输出对象

  public class JsonObj
{
public string Key { get; set; }
public string Value { get; set; }
}

  初始化结果变量

JsonObj _result = new JsonObj() { Key = "failure", Value = string.Empty };

  修改结果状态

try
{
   //逻辑代码
   _result.Key = "success";
  _result.Value = “htmlCode”;
}

  异常捕获

 catch (Exception ex)
{
_result.Value = ex.Message;
}

  最后序列化输出

 JavaScriptSerializer se = new JavaScriptSerializer();
context.Response.Write(se.Serialize(_result));

  原则:无论如何必须有输出,也就是要有客户端收到结果才能判断请求状态

ASP.NET WebForm Ajax请求Handler的经验的更多相关文章

  1. asp.net接收ajax请求参数时为空的现象

    如题,如果使用ajax请求asp.net后台时,如果使用jquery时,默认是添加了请求头,使后台能识别,并能通过Request对象进行获取. 但是如果你使用的是window.XMLHttpReque ...

  2. ASP.NET 让ajax请求webform后台方法

    $.ajax({ type: "POST", url: ".aspx/getSubjectDirection", data: JSON.stringify({ ...

  3. ASP.NET MVC AJAX 请求中加入 antiforgerytoken 解决“所需的防伪表单字段“__RequestVerificationToken”不存在”问题

    在ASP.NET mvc中如果在表中使用了@Html.AntiForgeryToken(),ajax post不会请求成功 解决方法是在ajax中加入__RequestVerificationToke ...

  4. asp.net MVC ajax 请求参数前台加密后台解密

    最近有一个需求要求页面查询数据库,查询内容保存到excel里面作为附件加密打包下载.查询的sql作为参数传入后台,实现加密提交.这里做个记录,后面用到直接来拿. 控制器 public ActionRe ...

  5. ASP.NET中HttpApplication中ProcessRequest方法中运行的事件顺序;ASP.NET WebForm和MVC总体请求流程图

    ASP.NET中HttpApplication中ProcessRequest方法中运行的事件顺序 1.BeginRequest  開始处理请求 2.AuthenticateRequest 授权验证请求 ...

  6. 智能提示含查询多列(html+JS+handler+ HttpRemoting)一、html示列 加 JS加 请求 Handler

    <html> <head> </head> <body> <form id="recordform" name="r ...

  7. 记一次Ajax请求MVC调优

    问题描述 ASP.NETMVC项目,编辑页面赋值操作,ajax请求很慢. 对同一个控制器有2个请求 一个为获取该表的树形结构数据(绑定下拉框) 一个为获取某实体的单条记录(编辑操作) 排查过程 数据库 ...

  8. ASP.NET MVC 中如何用自定义 Handler 来处理来自 AJAX 请求的 HttpRequestValidationException 错误

    今天我们的项目遇到问题 为了避免跨站点脚本攻击, 默认我们项目是启用了 validateRequest,这也是 ASP.NET 的默认验证规则.项目发布后,如果 customError 启用了,则会显 ...

  9. ASP.NET WebForm 之 Ajax 请求后端处理

    概述 ASP.NET MVC中的异步用途非常广泛,操作起来也非常简单.前台请求异步请求 Controller下的Action 方法,后端返回ActionResult 即可.但是在ASP.NET Web ...

随机推荐

  1. Implement strStr() 字符串匹配

    Implement strStr(). Returns the index of the first occurrence of needle in haystack, or -1 if needle ...

  2. Python中的socket

    socket()模块函数用法 import socket socket.socket(socket_family,socket_type,protocal=0) socket_family 可以是 A ...

  3. WPF动画应用-几何图形扩散动画

    原文:WPF动画应用-几何图形扩散动画 最终效果图: 本实例中用到了DoubleAnimation和Storyboard两个类. 如果想系统学习的话可以直接点击链接看官方文档. 源码: 首先,在页面上 ...

  4. Redis源码解析:09redis数据库实现(键值对操作、键超时功能、键空间通知)

    本章对Redis服务器的数据库实现进行介绍,说明Redis数据库相关操作的实现,包括数据库中键值对的添加.删除.查看.更新等操作的实现:客户端切换数据库的实现:键超时相关功能的实现.键空间事件通知等. ...

  5. @gym - 101190B@ Binary Code

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 我们称一组字符串是 "前缀码",当且仅当不存 ...

  6. 一些关于中国剩余定理的数论题(POJ 2891/HDU 3579/HDU 1573/HDU 1930)

    2891 -- Strange Way to Express Integers import java.math.BigInteger; import java.util.Scanner; publi ...

  7. pip 指定目录安装

    pip install --target=d:\somewhere\other\than\the\default    package_name

  8. SuperSocket接收过滤器工厂(ReceiveFilterFactory)

    接收过滤器工厂(ReceiveFilterFactory)用于为每个会话创建接收过滤器. 定义一个过滤器工厂(ReceiveFilterFactory)类型, 你必须实现接口 IReceiveFilt ...

  9. supersockets支持热更新的服务器实例配置选项

    SuperSocket 支持以下配置选项的热更新: * logCommand * idleSessionTimeOut * maxRequestLength * logBasicSessionActi ...

  10. js创建对象的三种方式和js工厂模式创建对象

    文章地址: https://www.cnblogs.com/sandraryan/ 创建对象 创建对象的三种方式 构造函数 ,是一种特殊的方法.主要用来在创建对象时初始化对象 1. 调用系统的构造函数 ...