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在前后台交互的过程中发挥着相当出色的作用.请接着往下看教 ...
随机推荐
- 回归分析:非线性nlinfi
今天测试.这首题,真的很头疼,第一次看到这个题,就知道要用nlinefit函数做,但是我一个地方没搞清楚, 花了我40多分钟还没做也来. 最后终于是调用的函数出错了.主要是没有将一个列抽出来.一个二维 ...
- Wikioi 1169 传纸条
这道题是我人生第一道双线动规题,因此我觉得还是很有必要记录下来. 刚接触到这道题的时候我第一反应是单线的动规,可是下一秒我就觉得这样做可能会有问题,因为从左上角(以下简称A)到右下角(以下简称B)通过 ...
- Capture the Flag(模拟)
Capture the Flag Time Limit: 2 Seconds Memory Limit: 65536 KB Special Judge In computer se ...
- 在Android中建立Android project没有R.java文件
最近在搞一下安卓,在新建Android工程,既然发现在gen目录下没有R.java这个文件.我当时感到很郁闷,上次建Android工程才好好的,怎么这次既然报错没有R.java.后来我用以下才解决了. ...
- vnc远程linux服务器黑屏
本来想尝试用vnc连接到linux服务器上,图形化操作一点东西,不过遇到了困难,记录方便查询. 1,打开vnc 选择Ip和端口,连接上去显示黑屏. 2,于是想到系统原先没有安装图像化桌面.so, y ...
- oracle ORA_ROWSCN 行记录的更新时间
在这介绍两个oracle 10G开始提供的一个伪列ORA_ROWSCN,它又分为两种模式一种是基于block,这是默认的模式,还有一种是基于row上,这种模式只能在建里表时指定ROWDEPENDENC ...
- Angular之filter学习
过滤器(filter)正如其名,作用就是接收一个输入,通过某个规则进行处理,然后返回处理后的结果.主要用在数据的格式化上,例如获取一个数组中的子集,对数组中的元素进行排序等.ng内置了一些过滤器,它们 ...
- 读取本地文件理解FileReader对象的方法和事件以及上传按钮的美化。
一.FileReader对象 用来把文件读入内存,并且读取文件中的数据.FileReader对象提供了异步API,使用该API可以在浏览器主线程中异步访问文件系统,读取文件中的数据. 浏览器支持情况, ...
- Crystal Report分組中的序號重新遞增
客戶要批次列印發票,也就是報表需要按照發票號碼(INV_NO)進行分組,每個發票里還有明細的item,之前因為直接抓RecordNumber,所以該欄位只能從1開始計數,遇到新的發票發號不會重新從1開 ...
- Entity Framework排序
public ActionResult Index() { using (ApplicationDbContext db = new ApplicationDbContext()) { //var l ...