json定义及jquery操作json的方法
一、背景
json是一种轻量级数据交换格式,非常利于java服务与js的交互,本文将介绍json的简单定义和js如何解析json。
二、内容
1、json定义:
简单的json格式为[{"key1":"value1"},{"key2":"value2"}],
[]代表数组,{}代表数组中的数据对象,key1,key2是一个json对象中的key,一个json中key值唯一,value1,value2,是key键对应的值。
定义方式:
1)直接拼写json串,例:String变量,内容为[{"attchName":"附件0","attchId":0},{"attchName":"附件1","attchId":1},{"attchName":"附件2","attchId":2}]。
2)引入json-lib.jar开源jar包,定义JSONObject对象,例:
JSONArray jsonArray = newJSONArray();
JSONObject attchJson = newJSONObject();
attchJson.put("attchId","0");
attchJson.put("attchName", "附件0");
jsonArray.put(attchJson);
jsonArray即为一个json数据,等价于用[]的定义一个json.
复杂json定义,json中key对应的值也可以是一个json数组,如,json中封装一个任务信息,这个任务中有若干附件定义方法如下:
JSONArray taskJsonArray = newJSONArray();
JSONObject taskJsonObj = newJSONObject();
taskJsonObj.put("taskId",100);
taskJsonObj.put("taskName", "myTask");
taskJsonObj.put("attchs",jsonArray);
taskJsonArray.put(jsonObj);
taskJsonArray为最后想要得到的json内容,
简单拼串后的形式如下:
[{"attchs":[{"attchName":"附件0","attchId":0},{"attchName":"附件1","attchId":1},{"attchName":"附件2","attchId":2}],"taskId":100,"taskName":"myTask"}]
2、js解析json
json的一般解析方式:
var json = eval_r(jsonArray );
for(var i=0;i<json.length;i++){
alert("attchId:"+json[i].attchId+",attchName:"+json[i].attchName);
}
使用jquery解析json:
$.getJSON("jsonTest",{showNumber:"3"},function(data){
$.each(data,function(idx,item){
//alert(idx);
if(idx<0){
returntrue;//同countinue,返回false同break
}
alert("attchId:"+item.attchId+",taskName:"+item.attchName);
});
});
三、总结
json格式简单,便于解析和生成,而且是一个轻量级数据交换格式,便于在web开发中使用。
以上就是小编为大家带来的json定义及jquery操作json的方法的全部内容了,希望对大家有所帮助,多多支持脚本之家~
相关文章
JS拖动选择table里的单元格完整实例【基于jQuery】
这篇文章主要介绍了JS拖动选择table里的单元格,结合完整实例形式分析了基于jQuery的table表格动态操作相关实现技巧,涉及事件响应及页面元素属性动态操作使用方法,需要的朋友可以参考下2019-05-05
jquery UI Datepicker时间控件的使用方法(终结版)
这篇文章是jquery UI Datepicker时间控件的使用方法终结版,可以说是技术的升华,实现的功能有限制的开始时间和结束时间跨度不超过三天,并配置有清空时间,重选时间等,感兴趣的小伙伴们可以参考一下2015-11-11
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码
asp.net下使用jquery 的ajax+WebService+json 实现无刷新取后台值的实现代码 ,比页面刷新更好,用户体验更好,需要的朋友可以参考下。2010-09-09


最新评论