JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于人类阅读和编写,同时也易于机器解析和生成,在PHP中,我们可以使用内置的函数来处理JSON数据,从而获取其中的价值。
如何解析value为字符串的JSON
这里首先给出JSON字符串集,字符串集如下: var1,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对象和字符串为依据,分别介绍两种方式获取到的结果处理方式。 ()对于服务器返回的JSON字符串,如果jquery异步请求没做类型说明,或者以字符串方式接受,那么需要做一次对象化处理,方式不是太麻烦,就是将该字符串放于eval()中执行一次。 这种方式也适合以普通javascipt方式获取json对象,以下举例说明: var DataObj=eval((+data+));//转换为json对象 alert();//输出root的子对象数量 $(,fucntion(idx,item){ if(idx==0){ return true; } //输出每个root子对象的名称和值 alert(name:++,value:+); }) 注:对于一般的js生成json对象,只需要将$()方法替换为for语句即可,其他不变。 2.$对于服务器返回的JSON字符串,如果jquery异步请求将type(一般为这个配置属性)设为“json”,或者利用$()方法获得服务器返回,那么就不需要eval()方法了,因为这时候得到的结果已经是json对象了,只需直接调用该对象即可,这里以$方法为例说明数据处理方法: $({param:gaoyusi},function(data){ //此处返回的data已经是json对象 //以下其他操作同第一种情况 $(,function(idx,item){ if(idx==0){ return true;//同countinue,返回false同break } alert(name:++,value:+); }); }); 这里特别需要注意的是方式1中的eval()方法是动态执行其中字符串(可能是js脚本)的,这样很容易会造成系统的安全问题。 所以可以采用一些规避了eval()的第三方客户端脚本库,比如JSON in JavaScript就提供了一个不超过3k的脚本库。 3jQuery解析Json对象: jQuery提供了另一种方法“parseJSON”,这需要一个标准的JSON字符串,并返回生成的JavaScript对象。 让我们来看 看语法: data = $(string); 看看它是如何运用的到实际开发中的: 代码如下:$({url: dataURL, success: function(results) {var parsedJson = (results);alert();} });
ext动态树
效果如图。
[{cid:2,cls:folder,id:2,leaf:false,text:服装},{cid:3,cls:folder,id:3,leaf:false,text:饰品},{cid:4,cls:folder,id:4,leaf:false,text:家电}]
[{cid:5,cls:folder,id:5,leaf:false,text:女装},{cid:6,cls:folder,id:6,leaf:false,text:男装},{cid:7,cls:folder,id:7,leaf:false,text:童装}]
这个是从数据库中取出来发送的json。
下面是jsp代码。
(function() {
var rootNode=new ({text:商品分类,id:1});
var loader=new ({
(beforeload,function(loader,node){
(append,function(tree,thiz,newNode,index){
(click,function(thiz,e){
alert(我要处理的代码--+);
var treePanel=new ({
width:300,
height:500,
title:类别展示,
loader:loader,
root:rootNode
(categoryBrose);
-------------------------下面是写json的代码---------------------------public ActionForward getCategory(ActionMapping arg0, ActionForm arg1,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
(text/json);
Integer cid = ((cid));
List
List
String treeStr = (trees)();
()(treeStr);
return null;
------------------------下面是工具类,将实际类别转化为Ext要求的类别------------------------------
public class TreeUtil {
public static List
List
if(list==null){
return trees;
for(Category ca:list){
CategoryTree ct=new CategoryTree();
boolean leaf=()==4?true:false;
(leaf?file:folder);

return trees;
-------------------------Ext要求的Tree类------------------------------
public class CategoryTree implements Serializable {
private String text;
private int id;
private boolean leaf;
private String cls;
private int cid;//类别ID
set/get();
武神onLine 虎啸至尊卡 填写hz0002都是送什么礼物?
在注册账号《武神》的时候,在虎啸至尊卡的位置填写 hz0002,可以获得以下物品。 并此卡可循环使用 而且还不限使用次数。 《武神》虎啸至尊卡,送价值4999元宝 虎啸至尊卡号(豪华大礼包卡):hz0002物品内容(价值4999元金锭): 1级:极品装备*2;玉髓*2 10级:极品武器*1、玉髓*3 20级:五十元金卷*1、极品装备*2、玉 髓*5、烟花*3 30级:极品首饰*2、金疮药*1、首阳散 *1、小凝神丹*1、寻宝令*1、玉髓*10、 一百五十元金卷*1 40级:小凝神丹*3、云髓*10、英雄帖*1 、黑铁令牌*5、功勋铜宝箱*1、小林茶 *1、大喇叭*1、寻宝令*1、巡游令*1、 三百元金卷*1 50级:黑铁令牌*20、名望铜宝箱*1、豪 华钱袋*1、云髓*15、回春丹*1、真气丸 *1、高级坐骑饲料*1、归元丸*3、青石 晶*1、五百元金卷*1 60级:黄金令牌*15、功勋银宝箱*1、名 望银宝箱*1、云髓*20、赎罪符*1、回春 丹*1、真气丸*1、武神精英称号卷轴*1 70级:一千元金卷*1
武神世纪玩家群QQ群
咨询官方网站:注册网站:注意事项:创建角色后在扬州和迎新大使对话领取奖励第一次领取后会在包里出现一个虎啸至尊卡宝箱,达到开启等级,鼠标点击右键即可得到奖励
大家好。新来的还请多多关照!送给大家见面礼!注册时输入虎啸至尊卡:hz0002 享受超级礼包的快感!
发表评论