2012-11-23 75 views
0

PHP的json_encode($對象)的結果是如何將json數據轉換成jquery代碼?

[{"price_id":"1","website_id":"0","price_qty":2,"price":"90.0000"}, 
{"price_id":"2","website_id":"0","price_qty":5,"price":"80.0000"}, 
{"price_id":"3","website_id":"0","price_qty":8,"price":"70.0000"}] 

有人告訴我,var sorted = arrayWithJsonData.sort(function(a,b){}

如何使用PHP以上json_encode($對象)arrayWithJsonData。 我用下面的方式,但它顯示類型錯誤:object.sort不是一個函數

第一:在PHP我所做的:echo '<div style="display:none;" id="object">'.$object.'</div>';然後在jQuery中使用

var object=jQuery("#object").text(); // first sort the array var sorted = object.sort(function(a,b){} 
+0

我認爲錯誤TypeError:object.sort是不是一個函數是從JavaScript對象arrayWithJsonData,而不是PHP – Diego

回答

1

您需要首先解析對象,的JavaScript(jQuery的),可以把它理解:

JSON.parse(data); 
+0

如何解析它?你能給更多datail.thank你 – 123

0
var arrayWithJsonData = <?php json_encode($object) ?>; 
var sorted = arrayWithJsonData.sort(function(a, b){ 
    // Sort criteria between a and b 
}); 
1
var arrayWithJsonData = $.parseJSON($('#object').text()); 

$.parseJSON是一個用於將格式正確的json字符串轉換爲json對象的jQuery可用性(jQuery doc:http://api.jquery.com/jQuery.parseJSON/)。在我們的例子中,匹配元素的$('#object').text()方法返回格式良好的json字符串,它是PHP函數json_encode($object)的輸出。希望有所幫助。

+0

也許你可以解釋你的答案有點幫助OP瞭解其爲什麼起作用。 –