我有一个小脚本来从我的数据库请求json数据。这是代码
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
$(document).ready(function() {
var keyword = "1";
var baseurl1 = "json_data2.php?l=" + keyword;
// Product Count
var json = (function() {
var json = null;
$.ajax({
'async': false,
'global': false,
'url': baseurl1,
'dataType': "json",
'success': function(data) {
json = data;
}
});
return json;
})();
console.log(json);
});
});
</script>
当我的Feed看起来像这样
{"limit": [{"rows":"127"}]}
我在控制台中得到“Object {limit:Array [1]}”。所以它似乎在说。我也可以提醒json.limit [0] .rows并显示127。到目前为止一切都很好。
当我尝试获取另一个看起来像这样的数据
时{"posts": [{"productname":"Das kleine Ich bin ich","link":"if3OHlvncaIY7A7VGze7VSIeAAZAIZV83cvaG%2B5w3U48cuooMp9qZZJkdQzwyGEXgk8LCR9kD7nY6Y%2FSR0RnjRJo44jHguoaesLAa4mLhuKpuLsfty85ZaePH%2FHReJTc","imgurl":"img\/products\/mytoys\/das-kleine-ich-bin-ich.jpg","price":"13.90","oldprice":"","sale":""},]}
控制台日志显示为“null”。可能是什么问题?我的意思是我没有改变代码,只改变了Url。数据源是JSON,我也访问了我的浏览器中的数据源,它正确显示。有什么指针吗?
答案 0 :(得分:2)
console.log记录为null,因为执行该行时,ajax执行尚未完成, 你的控制台日志,以及你想用ajax调用返回的数据做什么都必须在成功回调中