Ajax请求ashx返回各类数据的常见处理方式
。请求text数据,在success事件中手动解析
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
dataType: "text",
success: function (data) {
var json = eval('(' + data + ')');
alert(json.Age);
}
});
后台处理:
HttpResponse res = context.Response;
HttpRequest req = context.Request;
string code = req["filename"];
string jsonString = "{\"Age\":28,\"Name\":\"张三\"}";
//string jsonString = "{'Age':23,'Name':'abc'}";
if (code != null)
{
res.Write(jsonString);
res.ContentType = "text/plain";
res.End();
}
在这种情况下,单引号分割和转移双引号分割,都可以。 .请求json格式数据,jquery自动解析
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
// contentType:"application/json",----------在ajax请求ashx文件的json数据时,此属性不能被指定,而在请求webservices时,是必须指定的。
dataType: "json",
success: function (data) {
alert(data.Name);
}
}); 后台处理:
HttpResponse res = context.Response;
HttpRequest req = context.Request;
string code = req["filename"];
string jsonString = "{\"Age\":28,\"Name\":\"张三\"}";
if (code != null)
{
res.Write(jsonString);
res.ContentType = "text/plain";
res.End();
}
在这种情况下,只有转移双引号分割,才可以在前台被jquery方法自动解析。 .带序列化的text数据前台解析
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
dataType: "text",
success: function (data) {
$("p").text(data);
var json = eval('(' + data + ')');
alert(json.Name);
}
});
json数据内容: {"Name":"zhangsan","Code":,"Birthday":"\/Date(649666800000)\/"}
后台处理: HttpResponse res = context.Response;
HttpRequest req = context.Request;
string code = req["filename"];
Student stu = new Student {
Name="zhangsan",
Code=,
Birthday=Convert.ToDateTime("1990-8-3")
};
JavaScriptSerializer serializer=new JavaScriptSerializer();
string jsonString = serializer.Serialize(stu);
json数据内容: "{\"Name\":\"zhangsan\",\"Code\":111,\"Birthday\":\"\\/Date(649666800000)\\/\"}"
if (code != null)
{
res.Write(jsonString);
res.ContentType = "text/plain";
res.End();
}
[Serializable]
public class Student
{
public string Name { get; set; }
public int Code { get; set; }
public DateTime Birthday { get; set; }
} . 带序列化的json 前台自动解析:
前台:
$.ajax({
type: "post",
url: "checkFile.ashx",
data: { "filename": "" },
dataType: "json",--------------只要指定此处就可以,后台处理同上。
success: function (data) {
alert(data.Name);
}
});
Ajax请求ashx返回各类数据的常见处理方式的更多相关文章
- Ajax请求ashx 返回 json 格式数据常见问题
		
问题:ashx 返回的字符串json格式,在前台ajax自动解析失败. 问题分析:经过排查,发现是拼接json时出现” ’ “单引号,jquery无法解析,用” “ “双引号才可以.例如: stri ...
 - Jquery通过ajax请求NodeJS返回json数据
		
最近看了NodeJS相关的,在网上查了下结合AJAX的应用,感觉应用前景还是不错的.为什么用这个组合呢? 1.NodeJS不需要安装,拷贝过去就可以使用,而环境变量可以只配置在当前cmd窗口,运行方便 ...
 - ajax请求action返回json数据
		
1,服务端: HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType(&q ...
 - Query通过Ajax向PHP服务端发送请求并返回JSON数据
		
Query通过Ajax向PHP服务端发送请求并返回JSON数据 服务端PHP读取MYSQL数据,并转换成JSON数据,传递给前端Javascript,并操作JSON数据.本文将通过实例演示了jQuer ...
 - jquery的ajax异步请求接收返回json数据
		
http://www.jb51.net/article/51122.htm jquery的ajax异步请求接收返回json数据方法设置简单,一个是服务器处理程序是返回json数据,另一种就是ajax发 ...
 - 【04】AJAX接收服务器返回的数据
		
AJAX接收服务器返回的数据 readyState 和 status 属性 readyState 属性保存有 XMLHttpRequest 对象的交互状态,从 0 到 4 变化: 0 :未初始化(还没 ...
 - jQuery ajax请求错误返回status 0和错误error的问题
		
上周发现一个jQuery ajax请求错误返回status 0和错误error的问题,responseText是"error",状态码是0而不是200: $.ajax({ type ...
 - ajax请求ashx跨域问题解决办法
		
ajax请求ashx跨域问题解决办法 https://blog.csdn.net/windowsliusheng/article/details/51583566 翻译windowsliusheng ...
 - jQuery通过Ajax向PHP服务端发送请求并返回JSON数据
		
SON(JavaScript Object Notation) 是一种轻量级的数据交换格式.易于人阅读和编写,同时也易于机器解析和生成.JSON在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...
 
随机推荐
- MongoDB C Driver and APIinstances linux MongoDB安装配置
			
<一,linux平台MongoDB安装配置>在这我们使用的Centos6 yum部署的,你想搞编译,自个干!
 - Perl Symbolic Reference
			
看一些模块的代码,很多时候通过*glob的方式来改变变量或者函数,这种方法称为Symbolic reference. 首先看一下*glob的结构,这个在之前的博文已经讲过,不做细述: SV = PVG ...
 - oracle 查询表名以及表的列名
			
oracle 查询表名以及表的列名的代码. 1.查询表名: 代码如下: select table_name,tablespace_name,temporary from user_tables [ ...
 - 六度分离(floyd算法+dijskra+SPFA)
			
六度分离 Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
 - [置顶] Android开发实战记录(三)---HelloWorld
			
1.新建Android项目,选择Android Project,然后Next 2.填写项目名称HelloWorld然后next,这里注意下,Java开发的命名规范 3.选择Android SDK版本, ...
 - 【并查集专题】【HDU】
			
PS:做到第四题才发现 2,3题的路径压缩等于没写 How Many Tables Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65 ...
 - apache 三种工作模式的讲解
			
Apache 2.X 支持插入式并行处理模块,称为多路处理模块(MPM).在编译apache时必须选择也只能选择一个MPM,对类UNIX系统,有几个不同的MPM可供选择,它们会影响到apache的速 ...
 - android使用友盟第三方自动更新/手动更新
			
最近项目用到自动更新,发现一个方便快捷的第三方组件非常好用,只需要几行代码搞定,非常适合新手使用.分享给大家一起学习. 本文档帮助您以最快速最简洁的方式集成使用自动更新组件. 一.申请友盟开发者账号创 ...
 - iOS开发之UIApplication
			
UIApplication的核心作用是提供了iOS程序运行期间的控制和协作工作. iPhone应用程序是由主函数main启动,它负责调用UIApplicationMain函数,该函数的形式如下所示: ...
 - 005    列表以及append,extend方法
			
定义一个列表: number=[,'changhao','常浩',5.2] 往这个列表里面添加单一新值(类型无限制),需要使用append方法. 例如: number.append() number. ...