javascript操做JSON字符

一、先要區分JSON字符串和JSON對象php

JSON字符串:html

Var strJSON = 「{「Area」:[{「AreaId」:」123」},{「AreaId」:」345」}]}」,   或者jquery

Var strJSON = ‘{「Area」:[{「AreaId」:」123」},{「AreaId」:」345」}]}’,ajax

 

這表示一個JSON字符串,因爲在Js中單引號和雙引號均可以表示一個字符串,因此上面第一個使用雙引號和第二個使用單引號的都表示一個JSON字符串。json

JSON對象:post

Var JSON = {「Area」:[{「AreaId」:」123」},{「AreaId」:」345」}]},url

 

JSON對象最外面是沒有單引號或者雙引號的,這就表示一個JSON對象spa

 

 

2.jquery腳本:(返回到js後的處理htm

第一種要用到varl轉化的:是字符串的時候就要用eval轉化成jquery對象:對象

var arr = '{"red":{"id":1,"name":"mary"},"blue":{"id":2,"name":"u71d5u5b50"}}';//u71d5u5b50這個是php中自動轉換的
var dataObj = eval("("+arr+")"); 
  $.each(dataObj,function(idx,item){   
   //輸出  
   alert(item.id+"哈哈"+item.name);   
})

第二種:不須要轉化的:

var arr = {"red":{"id":1,"name":"mary"},"blue":{"id":2,"name":"u71d5u5b50"}};
  $.each(arr,function(idx,item){     
   //輸出
   alert(item.id+"哈哈"+item.name);
})

 

循環也有兩種方法:
//方法一:

$.each(arr,function(idx,item){     
   //輸出
   alert(item.id+"哈哈"+item.name);
})

//方法二:

for(var key in arr){
  alert(key);
  alert(arr[key].status);
 }

 

ajax返回JSON時的處理方式

 1,使用普通的aspx頁面來處理

前臺:

$.ajax({ 
           type: "post", 
                                        url: "Default.aspx", 
                                        dataType: "json", 
                                        success: function (data) { 
                                                $("input#showTime").val(data[0].demoData); 
                                        }, 
                                        error: function (XMLHttpRequest, textStatus, errorThrown) { 
                                                alert(errorThrown); 
                                        } 
                                });

後臺:

Response.Clear(); 
                        Response.Write("[{"demoData":"This Is The JSON Data"}]"); 
                        Response.Flush(); 
                        Response.End();

這種處理的方式將傳遞過來的數據直接解析爲json數據,也就是說這裏的前臺js代碼可能直接把這些數據解析成json對象數據,而並不是字符串數據,如data[0].demoData,這裏就直接使用了這個json對象數據

 

 

轉載:http://www.php100.com/html/program/jquery/2013/0905/5912.html

相關文章
相關標籤/搜索