json问题

Jack Wang 2010-01-28 08:45:02
var myJSON = {"objJSON":[
{"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique2","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique3","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique4","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique5","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}

]}

1.如何取出来某个files下面的所有结点

2.如何在任意位置 插入一个结点 删除一个节点



...全文
123 7 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
Jack Wang 2010-02-01
  • 打赏
  • 举报
回复
000
Jack Wang 2010-01-29
  • 打赏
  • 举报
回复
000
Jack Wang 2010-01-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 ymmc001 的回复:]
引用 3 楼 wuyan0319 的回复:
引用 1 楼 ymmc001 的回复:
JScript codevar myJSON= {"objJSON":[
    {"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique2","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique3","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique4","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique5","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}

]}//取出某个files下面的所有节点for(var i=0;i <myJSON.objJSON.length;i++){var arr= myJSON.objJSON[i].files;for(var j=0;j <arr.length;j++){
        alert(arr[j].name);
    }
}
这样就可以了


谢谢。朋友有没有不用遍利 能直接定位到的的方法。因为数据量很大

呵呵,当然可以:
JScript code//取该对象内第3个filevar file= myJSON.objJSON[2].files;//取得file列表中第2的文件名var fName= file[1].name;
其实你这个就是一个典型的文件系统搜索功能。
myJSON表示“我的电脑”,objJSON表示“盘符(如C盘)”,而
{"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}, 就是一个文件夹,文件夹里面又有许多的子文件夹,等等
[/Quote]

恩。是的。就是要实现这样的功能。不过对json不是很熟悉。 删除 插入 能在指点一下吗?
Alien 2010-01-28
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wuyan0319 的回复:]
引用 1 楼 ymmc001 的回复:
JScript codevar myJSON= {"objJSON":[
    {"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique2","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique3","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique4","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
    {"name":"a1","value":"unique5","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}

]}//取出某个files下面的所有节点for(var i=0;i <myJSON.objJSON.length;i++){var arr= myJSON.objJSON[i].files;for(var j=0;j <arr.length;j++){
        alert(arr[j].name);
    }
}
这样就可以了


谢谢。朋友有没有不用遍利 能直接定位到的的方法。因为数据量很大
[/Quote]
呵呵,当然可以:

//取该对象内第3个file
var file = myJSON.objJSON[2].files;
//取得file列表中第2的文件名
var fName = file[1].name;

其实你这个就是一个典型的文件系统搜索功能。
myJSON表示“我的电脑”,objJSON表示“盘符(如C盘)”,而
{"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}, 就是一个文件夹,文件夹里面又有许多的子文件夹,等等
Jack Wang 2010-01-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 ymmc001 的回复:]
JScript codevar myJSON= {"objJSON":[
{"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique2","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique3","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique4","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique5","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}

]}//取出某个files下面的所有节点for(var i=0;i<myJSON.objJSON.length;i++){var arr= myJSON.objJSON[i].files;for(var j=0;j<arr.length;j++){
alert(arr[j].name);
}
}
这样就可以了
[/Quote]

谢谢。朋友有没有不用遍利 能直接定位到的的方法。因为数据量很大
Alien 2010-01-28
  • 打赏
  • 举报
回复
这是一个json对象数组,对象是放在“{}”里面的,数组是放在“[]”里面的。注意这一点就可以轻松搞定了
Alien 2010-01-28
  • 打赏
  • 举报
回复

var myJSON = {"objJSON":[
{"name":"a1","value":"unique1","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique2","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique3","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique4","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]},
{"name":"a1","value":"unique5","files":[{"name":"a1-1"},{"name":"a1-2"},{"name":"a1-3"}]}

]}
//取出某个files下面的所有节点
for(var i=0;i<myJSON.objJSON.length;i++){
var arr = myJSON.objJSON[i].files;
for(var j=0;j<arr.length;j++){
alert(arr[j].name);
}
}

这样就可以了
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2010-01-28 08:45
社区公告
暂无公告