文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>jqeury eval将字符串转换json的方法

jqeury eval将字符串转换json的方法

时间:2011-03-15  来源:freedom831215

前台页面

 1 $.ajax({
2 type: "post",
3 contentType: "application/json",
4 url: "../WebForm1.aspx/GetRightsStr",
5 dataType: "json",
6 success: function(msg){
7 alert(msg.d);
8 var data = eval("(" + msg.d + ")");
9 $.each(data.rights, function(index, item){
10 alert(item.RightsName);
11 });
12 },
13 error: function(e, s, d){
14 alert(e);
15 alert(s);
16 alert(d);
17 }
18 });

后台方法:

 1     /// <summary> 
2 /// DataTable转成Json
3 /// </summary>
4 /// <param name="jsonName">josn名称</param>
5 /// <param name="dt">要转换的数据集</param>
6 /// <returns></returns>
7 public static string DataTableToJson(string jsonName, DataTable dt)
8 {
9 StringBuilder Json = new StringBuilder();
10 Json.Append("{\"" + jsonName + "\":[");
11 if (dt.Rows.Count > 0)
12 {
13 for (int i = 0; i < dt.Rows.Count; i++)
14 {
15 Json.Append("{");
16 for (int j = 0; j < dt.Columns.Count; j++)
17 {
18 Json.Append("\"" + dt.Columns[j].ColumnName.ToString() + "\":\"" + dt.Rows[i][j].ToString() + "\"");
19 if (j < dt.Columns.Count - 1)
20 {
21 Json.Append(",");
22 }
23 }
24 Json.Append("}");
25 if (i < dt.Rows.Count - 1)
26 {
27 Json.Append(",");
28 }
29 }
30 }
31 Json.Append("]}");
32 return Json.ToString();
33 }

这个方法是一个将DataTable转换成字符串的方法 。今天遇到的问题是 在 var data = eval("(" + msg.d + ")");
出错误 提示 是 缺少 } 这个方法有用了很多次了 不知道为什么出现这样的错误 。
找了半天,才发现 是数据的问题 在返回的字符串里 有 "\"这个字符, "\"具有转义的作用
所有会出现这个错误,晕啊,真实害苦我了 ,希望大家不要像我这样糊涂。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载