标签:
工作中遇到直接使用webform中的page_load()的方法直接返回json结果
但是直接使用Response.Write("");这个方法返回的结果是字符串,在前端获取的是字符串,不能直接转为json数据
大概思路是在后端page_load()将object 序列号成json格式的字符串
前端将字符串反序列化成json对象
后端代码:
protected void Page_Load(object sender, EventArgs e)
{
var jsonObject = new { Result = 0, Msg = "测试" };
string jsonString = JsonConvert.SerializeObject(jsonObject);
Context.Response.Write(jsonString);
Context.Response.End();
}
JsonConvert.SerializeObject();这个方法是引用了第三方的dll,Newtonsoft.Json.dll
前端代码:
function test(parameters)
{
$.ajax({
type: "post",
url: "About.aspx",
data: "",
async: true,
success: function (jsonString)
{
var resultJsonObject = JSON.parse(jsonString);
if (resultJsonObject.Resulet == "1")
{
alert("成功");
} else
{
alert(resultJsonObject.Msg);
}
alert(resultJsonObject.Msg);
window.location.href = "Default.aspx";
}
});
}
这里JSON.parse();是引用Json2.js这个文件
或者微软的SDK也自带,如图

使用前端使用jQuery获取 在apsx页面的page_load方法直接返回json数据
标签:
原文地址:http://www.cnblogs.com/wuqihui/p/4453388.html