好吧,看看这些以提醒()。这是完整的代码:
function OfficialFacebookLikes(Title)
{
$.getJSON('https://graph.facebook.com/'+Title, function(data) {
alert(data['likes'].toString()); //<<temp
return data['likes'].toString();
});
}
$(document).ready(function(){
$('.ui-btn').click(function(){ //cocacola
var LikeCount = OfficialFacebookLikes("cocacola");
alert(LikeCount);
});
});
为什么
alert(LikeCount)
在
之前显示(显示时为“未定义”)alert(data['likes'].toString())
在调用 alert(LikeCount)
之前,我调用了函数 OfficialFacebookLikes
。有人可以解释为什么会这样。如果我的思维过程没有成功,因为...我习惯用 C++ 编码。
最佳答案
这是一个异步 Ajax 调用。在调用返回之前,您将无法获得数据。在您的文档就绪代码中,您正试图立即提醒来电。
相反,在 ajax 的回调处理程序中对结果集做任何你需要做的事情:
$.getJSON('https://graph.facebook.com/'+Title, function(data) {
doSomethingWithMy(data);
});
关于javascript - jQuery 对 Javascript 函数的请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25090413/