2013-02-22 72 views
-1

我試圖通過使用json_encode我想從PHP通過json_encode成JavaScript

從PHP傳遞數組轉換成JavaScript,但是當我提醒值,我只看到「Object對象等」

當我它的var_dump我看到實際的陣列,但它不是顯示他們在警報

任何幫助,將不勝感激

問候

這是後續代碼var_dump

array(1) { 
    [0]=> 
    array(2) { 
    ["id"]=> 
    string(19) "3.0268" 
    ["postcode"]=> 
    string(137) "hello" 
    } 
} 

array(2) { 
    [0]=> 
    array(2) { 
    ["id"]=> 
    string(19) "3.0268070455319E+17" 
    ["postcode"]=> 
    string(137) "ECMWF continues its flip-flopping, still a temp drop next week & #snow risk but then no rise, http://t.co/tBlg9Ihs #ukweather #uksnow" 

} 代碼

<?php 

$con = mysql_connect('localhost', 'root', ''); 
    mysql_select_db('test'); 

    $result = mysql_query("SELECT * FROM address"); 

$arr = array(); 
while($row = mysql_fetch_assoc($result)) { 
    $arr[] = $row; 

} 

?> 

<script> 

var test = <?php echo json_encode($arr); ?>; 
alert(test); 

</script> 
+0

什麼是打印輸出? – Mathletics 2013-02-22 19:39:19

+0

這是預期的輸出。一切安好。對象的*默認字符串表示*是'「[object Object]」。使用'console.log'來檢查變量。 – 2013-02-22 19:40:37

+0

看到這個:http://stackoverflow.com/questions/684672/loop-through-javascript-object – 2013-02-22 19:41:25

回答

5

alert將調用toString()什麼傳遞給它。你可能想要console.logtest是一個對象,這是默認情況下在alert中打印的對象。

實施例:

alert({a:1,b:2}) // => [object Object] 
({a:1,b:2}).toString() // => "[object Object]" 
+1

@ Hashey100 http://jsfiddle.net/UpBEx/請務必打開控制檯 – 2013-02-22 19:48:46