处理json数据问题

来源:互联网 发布:周易风水网站源码 编辑:程序博客网 时间:2024/05/29 19:40

1. 前台处理方式之一: ★jQuery.parseJSON(json)
                     var parsej = $.parseJSON(data);
                     for (var i = 0; i < parsej.length; i++) {//处理多维json  【对应C#代码中第3种数据】  
                         $("#spanJson").append(parsej[i].Id + "-" + parsej[i].Name + "-" + parsej[i].Age + "<br/>");
                     }

  data:"[{"Id":1,"Name":"112","Age":21},{"Id":2,"Name":"112","Age":22},{"Id":3,"Name":"112","Age":23},{"Id":4,"Name":"112","Age":24}]"

  parsej:[object,object,object]  [Object, Object, Object, Object]

 

2.eval('('+json+')') 
                 if (data != null) {
                         var evaljson = eval('(' + data + ')');
                         $("#spanJson").html(evaljson.Id + "-" + evaljson.Name); //大小写和定义的要一模一样  
                         for (var i = 0; i < evaljson.length; i++) {//处理多维json---【对应C#代码中第2种数据】
                         $("#spanJson").append(evaljson[i].Id + "-" + evaljson[i].Name+"-"+evaljson[i].Age+"<br/>"); 
                         } 


 总结

 json一般用在少量的数据处理。因为格式简单,操作方面,而且js本身就支持json格式的处理功能  
 json一般格式如下:

{"Id":1,"Name":"zhangsan"}

或者

[{"Id":1,"Name":"zhangsan"},{"Id":2,"Name":"lisi"}]多维数组

 

后台的处理方式:

1.

 //--构建json格式数据              

//string jsonArr = "{'Id':12,'Name':'zhangsan'}";//---第1种数据              

//string jsonArr = "[{'Id':1,'Name':'张三','Age':20},{'Id':2,'Name':'李四','Age':30}]";

//---第2种数据              

//context.Response.Write(json);   

           

List<People> listperson = new List<People>();            

People []list ={  

                       new People(1,"112",21),   new People(2,"112",22),    new People(3,"112",23),  new People(4,"112",24)  

                       };            

    listperson.AddRange(list);            

   JavaScriptSerializer jss = new JavaScriptSerializer();//用JavaScriptSerialize 这个类实现对json数据的封装              

   string json = jss.Serialize(listperson);//---第3种数据              

   context.Response.Write(json);



    private void yzdsdxfs(BaseVO baseVO) {
        // TODO Auto-generated method stub
        String data = baseVO.getRequestParameter("data");
        if(!StringUtil.isNullString(data)){
            JSONArray datalist = JSONArray.fromObject(data);
            try {
                if(datalist != null && !datalist.isEmpty()){
                    for(int i = 0 ;i < datalist.size(); i++){
                        JSONObject row = datalist.getJSONObject(i);
                        String ydhm = row.getString("YDDHHM");
                        String messgage = row.getString("DXNR");
                        YzdsDxfsWebService.YzdsSendSms(ydhm, messgage);
                    }
                }
            } catch (Exception e) {
                log.error("发送短信服务出现失败:" + e.getMessage(), e);
            }
        }
    }