日期:2014-05-18  浏览次数:20395 次

jquery ajax以及ztree插件问题的困扰 来看看
最近在一个项目中需要用到jquery ajax方面的,找了会发现了一个不错的jquery控件ztree,然后开始研究,然后就遇到了些问题。
希望大家能看完问题描述(为了描述清楚,可能有点长,其实不复杂),给出一些解决的思路和方法,谢谢啦。
问题1:首先是jquery+ajax方面的问题,描述如下:
我在前台写一个ajax方法,代码如下
JScript code

$.ajax({
   type: "POST",
   url: "programList.aspx/getClassData",
   dataType: "json",
   contentType: "application/json; charset=utf-8",
   success: function(msg) {
     treeData = eval("(" + msg + ")").d;
     alert(treeData)},
   error: function(xhr, msg, e) { alert(msg); }
});


C# code

 public static string getClassData()


返回的是一个JSON数据格式的字符串,当运行时,发生错误,提示为:缺少']',然后我就去找找看是不是真的没有拼接好JSON的数据,但是最后还是没有找到,然后我把.aspx页面的dataType: "json" 改为dataType:"text",运行得到:
JScript code

{"classData":[{"Class_ID":"1","ClassName":"贵州广电","Synopsis":"","ParentID":"-1","ClassType":"1","ClassOrder":"1","CreatorID":"1","CreateDate":"2011-7-6 10:37:30"}]}


这里我就困惑啦 咋回事呢?为什么json不行呢?(因为看到网上有不少例子都是这样子写的)希望看到这里的高手们,如果知道原因,请回复下,谢谢。
问题2:上面的问题我还没有弄清,但是我还是往下走啦,用的是dataType:"text",然后参照ztree的API和一些例子,我尝试着绑定tree,所以我修改了后台的方法,让getClassData()返回符合ztree要求的json格式数据:如
JScript code

{ Class_ID: "1", ClassName: "贵州广电", ParentID: "-1", open: true }


然后参照API绑定ztree,但是出现了错误,然后我就自己把数据源直接定义赋值为
JScript code

var treeData = { Class_ID: "1", ClassName: "贵州广电", ParentID: "-1", open: true };


加载树,却正确了,郁闷了啊,这里的高手们,你们有谁遇到过这样的问题吗?希望大家帮帮分析分析。
问题困扰 吃饭都不香。。。。。。。

------解决方案--------------------
1,你传递过来数据到js后,是json格式的数据,你需要将数据序列化,var ms=parseJson(msg);这样写应该
2,你直接赋值给树,是因为这个tree可以接受json数据,也就是字典数据