[問題] 用ajax讀取PHP裡的資料出現問題

看板Web_Design作者 (Paul)時間7年前 (2016/07/21 04:10), 7年前編輯推噓4(4012)
留言16則, 8人參與, 最新討論串1/1
我是照教學網頁一步一步的做 https://openenergymonitor.org/emon/node/107 可是做到後面我的網頁卻跑不出資料 我嘗試將success改成complete 可以觸發alert, 但是跑出來的資料怪怪的 以下是我的代碼 $(document).ready(function(){ $.ajax({ type:"GET", url:"api.php", dataType:"json", complete:function(data) { alert("complete"); var id = data[0]; $("#test").html(id); } }); }); 在api.php上跑的array echo出來沒有問題 echo json_encode($array); 另外如果我將id改成data.toString() html會跑出[object Object] 目前判斷ajax應該是有完成與api.php之間的交換 但是不知道為什麼data跑出來是錯的 無法顯示 希望有人可以幫個忙 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 142.129.18.133 ※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1469045457.A.087.html

07/21 08:24, , 1F
會不會是沒有parse?
07/21 08:24, 1F

07/21 08:58, , 2F
JSON.parse(id)
07/21 08:58, 2F
感謝幫忙,不過加上了JSON.parse(data)進去可是還是顯示不出來耶 另外補充一下,在執行JSON.parse前data為[object object] 可是加入JSON.parse後就完全顯示不出來 ※ 編輯: yenpaul (142.129.18.133), 07/21/2016 10:32:49

07/21 11:07, , 3F
因為有error 所以success沒反應
07/21 11:07, 3F

07/21 11:07, , 4F
建議用console.log(data);看一下回傳的資料格式
07/21 11:07, 4F

07/21 11:07, , 5F
改用error函數 看看是什麼錯誤
07/21 11:07, 5F
謝謝大家幫忙,我已經將PHP中的data跑出來了 我用的方法是data.responseText 再 JSON.parse(data) 就可以將PHP讀出的陣列傳回網頁了 謝謝各位 ※ 編輯: yenpaul (142.129.18.133), 07/21/2016 12:24:55

07/22 07:41, , 6F
給你一個建議 基本上開發ajax會比較不好錯 因為沒有
07/22 07:41, 6F

07/22 07:41, , 7F
顯示畫面 不知道哪個環節有問題 你可以安裝Fiddler這
07/22 07:41, 7F

07/22 07:42, , 8F
套外軟體 可以監聽http所有的運作 方便除錯
07/22 07:42, 8F

07/22 12:14, , 9F
有設dataType的話,callback傳入的已經是物件,不需要再
07/22 12:14, 9F

07/22 12:14, , 10F
JSON.parse
07/22 12:14, 10F

07/22 12:16, , 11F
↑在用success的時候
07/22 12:16, 11F

07/22 12:17, , 12F
如果是用complete的話,根本沒有data,第一個參數是jqXHR
07/22 12:17, 12F

07/22 12:18, , 13F
用API先看好API說明 http://api.jquery.com/jquery.ajax/
07/22 12:18, 13F

07/22 12:23, , 14F
這種事應該在 success 作,不應該改 complete
07/22 12:23, 14F
我一開始是用success 可是因為一直跑不出來才換成complete 我還在研究為什麼我的success一直跑不出來 ..... ※ 編輯: yenpaul (142.129.18.133), 07/23/2016 03:46:12

07/28 00:07, , 15F
success 跟 complete 要查一下jQuery API Doc 阿....
07/28 00:07, 15F

07/28 00:07, , 16F
免得出包都不知道死在哪
07/28 00:07, 16F
文章代碼(AID): #1NZzhH27 (Web_Design)