jquery解析json数据

[javascript]  view plain copy
  1. jquery解析json数据:  
  2. var data="   
  3. {   
  4. root:   
  5. [   
  6. {name:'1',value:'0'},   
  7. {name:'6101',value:'北京市'},   
  8. {name:'6102',value:'天津市'},   
  9. {name:'6103',value:'上海市'},   
  10. {name:'6104',value:'重庆市'},   
  11. {name:'6105',value:'渭南市'},   
  12. {name:'6106',value:'延安市'},   
  13. {name:'6107',value:'汉中市'},   
  14. {name:'6108',value:'榆林市'},   
  15. {name:'6109',value:'安康市'},   
  16. {name:'6110',value:'商洛市'}   
  17. ]   
  18. }";   
  19. //data为字符串类型 则要将字符串类型转换成json数据类型  
  20. var jsondatas=eval("("+data+")");  
  21. $.each(jsondatas.root,function(i,n){  
  22. alert("name"+n.name+"value"+n.value);  
  23. }  
  24. )  
  25. //以下为数组类型字符串 转换成json 字符串 解析  
  26.     //数组形式的json字符串  
  27.     var jsondata="[{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:'商洛市'}]";  
  28. var json=eval(jsondata);  
  29. $.each(json,function(i,n){  
  30. alert(json[i].name);  
  31. alert(json[i].value);//根据索引取值  
  32. });  
  33. //json数据字符 不需要转换  
  34. var json={"Products":[   
  35. {"orderid":"11077","customerid":"RATTC"},   
  36. {"orderid":"11078","customerid":"RATT"}   
  37. ],   
  38. "Img":[{"id":"12345","url"   
  39. :"image/1.jpg"}   
  40. ]};   
  41. $.each(json.Products,function(i,n){  
  42.    alert(n.orderid);  
  43. })  
 
[c-sharp]  view plain copy
  1. 一般处理文件(Handler.ashx)  
  2.   if (context.Request.QueryString["method"] != null)  
  3.         {  
  4.             string method = context.Request.QueryString["method"].ToString();  
  5.             if (method == "getlist")  
  6.             {  
  7.                 string str = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;  
  8.                 SqlConnection conn = new SqlConnection(str);  
  9.                 conn.Open();  
  10.                 SqlCommand cmd = new SqlCommand();  
  11.                 cmd.Connection = conn;  
  12.                 cmd.CommandText = "select ProID,ProName,url from Project where Adress = '哈尔滨'";  
  13.                 DataSet ds = new DataSet();  
  14.                 SqlDataAdapter da = new SqlDataAdapter(cmd);  
  15.                 da.Fill(ds);  
  16.                 string sb = CreateJsonParameters(ds.Tables[0]);  
  17.         
  18.                   
  19.                 context.Response.ClearContent();  
  20.                 context.Response.Write(sb.ToString());  
  21.                 context.Response.End();  
  22.             }   
  23.         }  
  24.     }  
  25.       
  26.     ///     
  27.     /// 构建JSON字符串    
  28.    ///     
  29.      ///     
  30.      ///     
  31.    public  string CreateJsonParameters(DataTable dt)    
  32.     {    
  33.        System.Text.StringBuilder sb = new System.Text.StringBuilder();    
  34.        if (dt != null && dt.Rows.Count > 0)    
  35.          {    
  36.            sb.Append("[");    
  37.            for (int i = 0; i < dt.Rows.Count; i++)    
  38.          {    
  39.                sb.Append("{");    
  40.              for (int j = 0; j < dt.Columns.Count; j++)    
  41.               {    
  42.                   //如果值不是最后一个则添加逗号分隔    
  43.                    if (j < dt.Columns.Count - 1)    
  44.                    {    
  45.                       sb.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + "/"" + dt.Rows[i][j].ToString() + "/",");    
  46.                   }    
  47.                         //如果值为最后个字符则不添加逗号    
  48.                     else if (j == dt.Columns.Count - 1)    
  49.                    {    
  50.                        sb.Append("/"" + dt.Columns[j].ColumnName.ToString() + "/":" + "/"" + dt.Rows[i][j].ToString() + "/"");    
  51.                    }    
  52.                }    
  53.                 //如果为最后一个值的话 则不添加逗号    
  54.                if (i == dt.Rows.Count - 1)    
  55.                {    
  56.                     sb.Append("}");    
  57.                }    
  58.               else    
  59.                {    
  60.                    sb.Append("},");    
  61.               }    
  62.      
  63.           }    
  64.            sb.Append("]");    
  65.             return sb.ToString();    
  66.       
  67.         }    
  68.      else { return null; }    
  69.   }    

[javascript]  view plain copy
  1. $.ajax  
  2.            (  
  3.            {  
  4.                type: "POST",  
  5.                url: "Handler.ashx?method=getlist",  
  6.                async: false,//true表示异步 false表示同步  
  7.                contentType: "application/json",  
  8.                dataType: 'json',  
  9.                success: function(result) {  
  10.                 var temp=eval(result);  
  11.                 //通过javascript来解析返回数组字符串  
  12.                 for (var i = 0; i < temp.length; i++)   
  13.                {     
  14.                    o.innerHTML += "项目名称:" + result[i].ProName + "
    网址: + result[i].url + " mce_href=" + result[i].url + "  target='_blank'>" + result[i].url + "
    "
    ;  
  15.                    datas += "项目名称:" + result[i].ProName + "
    网址: + result[i].url + " mce_href=" + result[i].url + "  target='_blank'>" + result[i].url + "
    "
    ;  
  16.                      
  17.                }  
  18.                    TINY.box.show(datas, 0, 0, 0, 1);  
  19.                 
  20.                        
  21.                    
  22.                }  
  23.                  
  24.            });  

本文转自:http://blog.csdn.net/happy664618843/article/details/5954422

你可能感兴趣的:(JS)