我正在使用jQuery.ajax將用戶輸入發送到 PHP 并回傳一個陣列。當我 alert/console.log 回應時,它完美地顯示了警報中的陣列。但是在嘗試訪問陣列的單個元素時,我遇到了undefined錯誤。我需要訪問陣列的單個元素。我究竟做錯了什么?請幫忙。
instagram.php
$nola = array("mediac" => $bola, "userc" => $bola2);
echo json_encode($nola);
jquery ajax 檔案
var formData = jQuery('#myForminstagram').serialize();
jQuery.ajax({
url:'instagram.php',
type:'POST',
data: formData,
success: function(response) {
var myuser = response.userc;
alert(response); //works & shows the array as {"mediac" => $bola, "userc" => $bola2}
alert(myuser); // doesn't work & show undefined error
}
});
uj5u.com熱心網友回復:
這是因為您的 jquery 代碼將回應讀取為文本,而不是 json,因此您必須通過執行以下操作告訴它讀取為 json:
1.您可以添加header('Content-Type:application/json; charset=utf-8');到您的instagram.php。
或者
2.您可以添加dataType: 'json'到您的jquery ajax 檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/471087.html
上一篇:如何將狀態傳播到特定陣列中
