您的位置:首页 > Web前端 > JavaScript

Ajax请求ashx 返回 json 格式数据常见问题

2014-08-01 16:49 1376 查看
问题:ashx 返回的字符串json格式,在前台ajax自动解析失败。

问题分析:经过排查,发现是拼接json时出现” ’ “单引号,jquery无法解析,用” “ “双引号才可以。例如:

string strjson="[ { 'userName':'test'}]";  //单引号导致jquery无法自动解析。

string strjson="[ {\"userName\":\"test\"}]"; // 双引号可以解析;


ajax 代码:

$.ajax({
type: 'post',
url: 'Report.ashx?type=1',
dataType: 'json',
async: 'true', //异步
cache: 'false',
success: function(data) {

mychartOptions.series = data;

var chart = $("#report1").highcharts(mychartOptions);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {

$("#report1").html("<span>获取数据失败" + textStatus + "</span>");

}

});


后台ashx代码:

public void ProcessRequest(HttpContext context)
{
string type = context.Request["type"];

if (type == "1")
{
// 三种设置测试都通过,不设置contenType也可以     "application/json"  "text/plain"  "text/json"
//context.Response.ContentType = "text/json";

string json = "[{\"userid\":123}]";
context.Response.Write(json);
}
else if (type == "2")
{
GetReport2(context);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: