javascript动态合并JSON DATA
2010/8/10 22:38:03
阅读全文(8273) | 回复(2) | 编辑 | 精华
javascript动态合并JSON DATAAuthor:Qr,http://Qr.blogger.org.cnDate:2010/08/10 method:josn.newkey=josninc.key 示例: 1、公共地址簿(json.ashx?meth=address.xml): {"root":{ "group0":[ {"id":"001","name":"张三","type":"0|1|2"}, {"id":"002","name":"李四","type":"0|2|3"} ], "group1":[ {"id":"003","name":"王五","type":"0|1|3"}, {"id":"004","name":"赵六","type":"0|1|2|3"} ] }} 2、个人地址簿(json.ashx?meth=addressinc.xml): {"root":{ "group2":[ {"id":"001","name":"张三"}, {"id":"003","name":"王五"} ] }} 3、script using jQuery: var deptjson = null; $(function(){ $.ajax({ type:'post', url:'json.ashx?meth=address.xml', dataType:'json', success:function(data, status){ deptjson = data.root; //alert(jsonToString(deptjson)); }, error:function(data, status, e){ alert("err"); } }); }); $(function(){ $.ajax({ type:'post', url:'json.ashx?meth=addressinc.xml', dataType:'json', success:function(data, status){ deptjson.group2 = data.root.group2; //alert(jsonToString(deptjson)); }, error:function(data, status, e){ alert("err"); } }); }); 4、result: {"root":{ "group0":[ {"id":"001","name":"张三","type":"0|1|2"}, {"id":"002","name":"李四","type":"0|2|3"} ], "group1":[ {"id":"003","name":"王五","type":"0|1|3"}, {"id":"004","name":"赵六","type":"0|1|2|3"} ], "group2":[ {"id":"001","name":"张三"}, {"id":"003","name":"王五"} ] }} 原文链接:http://blogger.org.cn/blog/more.asp?name=Qr&id=49533
Posted by Qr on 2010/8/10 22:38:03
回复:javascript动态合并JSON DATA
2010/8/11 9:53:10
个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
var j1 = { "root": { "group0": [ { "id": "001", "name": "张三", "type": "0|1|2" }, { "id": "002", "name": "李四", "type": "0|2|3" } ], "group1": [ { "id": "003", "name": "王五", "type": "0|1|3" }, { "id": "004", "name": "赵六", "type": "0|1|2|3" } ] } }; var j2 = { "root": { "group2": [ { "id": "001", "name": "张三" }, { "id": "003", "name": "王五" } ] } }; for (var i in j2.root) { j1.root[i] = j2.root[i]; } for (var i in j1.root) { alert(i); } 这样算你要合并的json有多个节点,你也不需要像group2 这样特定指定了 以下为blog主人的回复: 佩服kin兄的认真劲!本来示例是打算贴用for...in语句或$.each()的处理代码,还有逻辑控制等,担心一些新手看不明白,都没有贴出来。
Posted by Kinogam on 2010/8/11 9:53:10
回复:javascript动态合并JSON DATA
2010/8/11 9:39:10
个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
这里好像写的有点死,感觉还是用for xx in xx来循环json的属性自动添加过去比较好
Posted by Kinogam on 2010/8/11 9:39:10
发表评论: |