簡體   English   中英

解碼使用Javascript從PHP檢索到的json對象

[英]Decoding json object retrieved from PHP in Javascript

我在使用從php回顯到javascript的json對象時遇到了麻煩。 在php文件中,我定義了

$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
echo($json);

然后在javascript文件中我要訪問該對象。

$("#test_btn").click(function() {
                $.get("serverside.php", function(data, status) { 
                   console.log("data " , data["a"]); //undefined
                   console.log(JSON.parse(data)); // error
                });
            });

我沒有為data [“ a”]和JSON.parse定義一個錯誤。 我應該如何使用后退數據?

根據您的評論(回顯幾個json字符串),您應該執行以下操作:

  1. 初始化一個空的結果數組;
  2. 讀取文件,然后使用json_decode()將其放入數組或對象中;
  3. 將此數組/對象添加到結果數組;
  4. 最后,使用json_encode()編碼並回顯結果數組。

在嘗試訪問data['a']之前,必須先創建一個JSON.parse(data)然后從PHP發送一個標頭,該標頭隱含地告訴瀏覽器數據輸出將是JSON。

header ('Content-Type: application/json');

問題可能是PHP返回的字符串看起來像JSON。

在JS中,它可能有助於JSON.parse(data)從字符串轉換為JSON對象,然后您可以訪問它。

$("#test_btn").click(function() {
  $.get("serverside.php", function(data, status) {
    $json = JSON.parse(data);
    console.log("data " , $json["a"]); // should now return 1
  });
});

您需要將json_encode或在javascript中解析

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM