我正在使用此代码从DataBase
获取数据 var ourData ='';
$.getJSON('getGaleri.php',function(data){
ourData =data;
});
//alert('loading');
});
html = html + '</ul></div></div>';
setTimeout(function(){
$.each(ourData, function(i, item) {
html = html +"<li class='modern konserler'><a href='"+path+ourData[i].resim_banner+"' rel='bookmark' class='fancybox'><img src='"+path+ourData[i].resim_banner+"' alt='ThemeMarket' /><div><span></span></div></a></li>";
$('#content').html(html);
}, 4000);
要让它正常工作,我需要取消注释第四行alert()
并让ourData
填充数据,
如果我没有对它进行评论,它将不会提供任何内容,ourData
将为空字符串,我认为使用setTimeout
可以提供帮助,但事实并非如此,
如何解决这个问题,因此我不需要alert()
来填充ourData
变量中的数据
答案 0 :(得分:0)
这是因为alert
在填充警告getJSON
之后阻止线程足够长时间以完成ourData
。在回调中使用each
:
$.getJSON('getGaleri.php',function(data){
$.each(data, function(i, item) {
html = html +"<li class='modern konserler'><a href='"+path+data[i].resim_banner+"' rel='bookmark' class='fancybox'><img src='"+path+data[i].resim_banner+"' alt='ThemeMarket' /><div><span></span></div></a></li>";
});
});