JQuery对JSON数组的操作

来源:互联网 发布:qt5 socket编程 编辑:程序博客网 时间:2024/05/17 00:01

假如要对下面的JSON数组进行操作:

新增、修改、删除操作:

var file_kxcl = [{"id":10,"children":[{"index":1,"modyid":1320,"file_type":"kxcl","file_name":"T_GZSJXX.txt","kxcl_type":"3"},{"index":2,"modyid":1296,"file_type":"kxcl","file_name":"T_GZSJXX_BASE.txt","kxcl_type":"3"}]}]

新增、修改的js代码:

function save_or_update_filelist(file_id, index, modyid, file_type, file_name, kxcl_type){var file_list;//根据文件类型判断哪个列表:'bxcl' -- file_bxcl ;  'kxcl'--file_kxcl;var file_save;//保存到localStorage时的key name; if(file_type=='bxcl'){file_list = file_bxcl;file_save = "file_bxcl_list";}else if(file_type=='kxcl'){file_list = file_kxcl;file_save = "file_kxcl_list";}if(file_list.length==0){//数组为空,直接创建file_list[file_list.length] = {"id": file_id,"children":[{"index": index,"modyid": modyid,"file_type":file_type,"file_name": file_name,"kxcl_type": kxcl_type}]}}else{var id_exist = false;var index_exist = false;$.each(file_list, function(n, value){if(value!=null){if(value.id == file_id){//文件列表下存在该文件类型idid_exist = true;$.each(value.children, function(indx, value){if(value.index == index){//该id下,index已经有了,覆盖value.modyid = modyid;value.file_type = file_type;value.file_name = file_name;value.kxcl_type = kxcl_type;index_exist = true;return false;}});if(index_exist==false){//该id下,index没有,新增value.children[value.children.length] = {"index": index,"modyid": modyid,"file_type":file_type,"file_name": file_name,"kxcl_type": kxcl_type}}return false;}}});if(id_exist==false){//文件列表下没有此文件类型id,新增file_list[file_list.length] = {"id":file_id,"children":[{"index": index,"modyid": modyid,"file_type":file_type,"file_name": file_name,"kxcl_type": kxcl_type}]}}}console.log(file_list);localStorage.setItem(file_save, JSON.stringify(file_list)); }

删除JSON数组的操作:

function delete_filelist(file_id, file_type){var file_list;var file_save;if(file_type=='bxcl'){file_list = file_bxcl;file_save = "file_bxcl_list";}else if(file_type=='kxcl'){file_list = file_kxcl;file_save = "file_kxcl_list";}if(file_list.length){$.each(file_list, function(n, value){if(value!=null && value.id == file_id){delete file_list[n];return false;}});}console.log("材料列表");console.log(file_list);localStorage.setItem(file_save, JSON.stringify(file_list));}

这篇文章和之前的:

javascript/jquery知识点记录

http://blog.csdn.net/qq_30337695/article/details/50904585对json数组的操作类似,只不过这个json数组更复杂些。方法类似。


举个json格式的例子,这种定义json格式的会用的很多,很常用,有时候又不好想起来怎么去做,记下吧:

var fayuan_data = [    {           'province':'徐州',        'fy_name':'徐州市中级人民法院',        'data':            {                'ms':1110,                'xs':621,                'zx':23432,                'xz':12312,                'la':123123,                'yj':12323123            }    },    {        'province':'连云港',        'fy_name':'连云港市中级人民法院',        'data':            {                'ms':1112,                'xs':1231,                'zx':2431,                'xz':1134,                'la':546,                'yj':8080            }    },    {        'province':'宿迁',        'fy_name':'宿迁市中级人民法院',        'data':            {                'ms':1,                'xs':1231,                'zx':23453,                'xz':5675675,                'la':09090,                'yj':797979            }    },    {        'province':'盐城',        'fy_name':'盐城市中级人民法院',        'data':            {                'ms':1111,                'xs':11111,                'zx':1111,                'xz':1,                'la':111,                'yj':11111            }    }]


2 0
原创粉丝点击