[问题] 用ajax读取PHP里的资料出现问题

楼主: yenpaul (Paul)   2016-07-21 04:10:55
我是照教学网页一步一步的做
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跑出来是错的 无法显示
希望有人可以帮个忙
谢谢大家
作者: pptsodog (天桥下说书)   2016-07-21 08:24:00
会不会是没有parse?
作者: Qiqi (泼泼)   2016-07-21 08:58:00
JSON.parse(id)
作者: Kenqr (function(){})()   2016-07-21 11:07:00
因为有error 所以success没反应
作者: secondDim ( 祈求备取会上)   2016-07-21 11:07:00
建议用console.log(data);看一下回传的资料格式
作者: et69523820 (小猪)   2016-07-22 07:41:00
给你一个建议 基本上开发ajax会比较不好错 因为没有显示画面 不知道哪个环节有问题 你可以安装Fiddler这套外软件 可以监听http所有的运作 方便除错
作者: ssccg (23)   2016-07-22 12:14:00
有设dataType的话,callback传入的已经是物件,不需要再JSON.parse↑在用success的时候如果是用complete的话,根本没有data,第一个参数是jqXHR用API先看好API说明 http://api.jquery.com/jquery.ajax/
作者: xdraculax (首席怪叔叔)   2016-07-22 12:23:00
这种事应该在 success 作,不应该改 complete
作者: kattte (诚实面对自己吧!)   2016-07-28 00:07:00
success 跟 complete 要查一下jQuery API Doc 阿....免得出包都不知道死在哪

Links booklink

Contact Us: admin [ a t ] ucptt.com