新普京网站-澳门新普京 > 新普京网站 > JSON的解析方式,jquery解析JSON数据示例代码_jquery_脚本之家【新普京网站】

JSON的解析方式,jquery解析JSON数据示例代码_jquery_脚本之家【新普京网站】

2019/12/29 17:38

那边能够找到json.js的代码,前边还索要formutil.js的代码及MD5.js 用jquery分析JSON数据的方法,作为jquery异步央浼的传导对象,jquery必要后重返的结果是json对象,这里构思的都以服务器再次回到JSON方式的字符串的方式,对于使用JSONObject等插件封装的JSON对象,与此亦是八九不离十,这里不再做验证。 这里首先给出JSON字符串集,字符串集如下: 代码如下: 复制代码 代码如下: var data=" { root: [ {name:'1',value:'0'}, {name:'6101',value:'北京市'}, {name:'6102',value:'天津市'}, {name:'6103',value:'上海市'}, {name:'6104',value:'重庆市'}, {name:'6105',value:'渭南市'}, {name:'6106',value:'延安市'}, {name:'6107',value:'汉中市'}, {name:'6108',value:'榆林市'}, {name:'6109',value:'安康市'}, {name:'6110',value:'商洛市'} ] }"; 这里以jquery异步获取的数据类型——json对象和字符串为依照,分别介绍两种艺术得到到的结果管理格局。 1.对此服务器重返的JSON字符串,假诺jquery异步必要没做项目表达,也许以字符串形式收受,那么必要做二次对象化管理,方式不是太难为,正是将该字符串放于eval(卡塔尔中施行三回。这种办法也相符以普通javascipt方式获得json对象,以下比方表达: 复制代码 代码如下: var dataObj=eval;//转变为json对象 alert;//输出root的子对象数量 $.each(dataObj.root,fucntion{ return true; } //输出种种root子对象的名号和值 alert("name:"+item.name+",value:"+item.value卡塔尔; }卡塔尔注:对于日常的js生成json对象,只必要将$.each(卡塔尔国方法替换为for语句就能够,其余不改变。 2.对此服务器再次回到的JSON字符串,若是jquery异步央求将type设为“json”,恐怕使用$.getJSON(卡塔尔方法得到服务器重返,那么就无需eval()方法了,因为那时候获得的结果早已然是json对象了,只需直接调用该指标就能够,这里以$.getJSON方法为例表达数据管理方法: 复制代码 代码如下: $.getJSON(" //此处再次回到的data已是json对象 //以下其余操作同第后生可畏种状态 $.each(data.root,function{ return true;//同countinue,再次来到false同break } alert("name:"+item.name+",value:"+item.value卡塔尔; }卡塔尔国; }State of Qatar; 那Ritter别需求在乎的是办法1中的eval(State of Qatar方法是动态推行此中字符串的,那样非常轻便会变成系统的景德镇难题。所以能够使用部分逃匿了eval(卡塔尔(قطر‎的第三方客商端脚本库,举例JSON in JavaScript就提供了多少个不超过3k的脚本库。

});
});

那边首先给出JSON字符串集,字符串集如下:

注:对于日常的js生成json对象,只要求将$.each(卡塔尔国方法替换为for语句就能够,其余不改变。

var dataObj=eval("("+data+")");//转换为json对象
alert(dataObj.root.length卡塔尔;//输出root的子对象数量
$.each(dataObj.root,fucntion(idx,item){
if(idx==0){
return true;
}

$.getJSON("
//此处重回的data已是json对象
//以下其余操作同第风度翩翩种情况
$.each(data.root,function(idx,item){
if(idx==0){
return true;//同countinue,返回false同break
}

2.对此服务器重临的JSON字符串,假设jquery异步恳求将type(常常为这几个布局属性)设为“json”,也许选用$.getJSON(卡塔尔(قطر‎方法得到服务器重临,那么就无需eval()方法了,因为当时得到的结果早已经是json对象了,只需直接调用该对象就能够,这里以$.getJSON方法为例说明数据管理办法:

那边考虑都思索的是服务器再次来到的是JSON方式的字符串的款式,对于利用JSONObject等插件封装的JSON对象,与此亦是大约,这里不再做验证。

var data="
{
root:
[
{name:'1',value:'0'},
{name:'6101',value:'西安市'},
{name:'6102',value:'铜川市'},
{name:'6103',value:'宝鸡市'},
{name:'6104',value:'咸阳市'},
{name:'6105',value:'渭南市'},
{name:'6106',value:'延安市'},
{name:'6107',value:'汉中市'},
{name:'6108',value:'榆林市'},
{name:'6109',value:'安康市'},
{name:'6110',value:'商洛市'}
]
}";

上一篇:JS操作CSS随机改变网页背景实现思路 下一篇:没有了