代码
$.ajax({
type:'POST',
url: 'hhWebsiteInfoController.do?website-getDt',
dataType:'json',
data:'',
success:function(json){
var dts = json.attributes.dts;
$("#news").empty();
if(typeof(dts)!=undefined){
for(var i=0;i<dts.length;i++){
$("#news").append("<div class='col-md-3 col-sm-3 wow fadeIn' data-wow-delay='0.6s' >"+dts[i].id+"</div>");
$("#news").append("<div class='col-md-3 col-sm-3 wow fadeIn' data-wow-delay='0.6s' >"+dts[i].title+"</div>");
$("#news").append("<div class='col-md-3 col-sm-3 wow fadeIn' data-wow-delay='0.6s' ><img src="+dts[i].pic1+"></div>");
$("#news").append("<div class='col-md-3 col-sm-3 wow fadeIn' data-wow-delay='0.6s'><input id="opener" type="image" src="+dts[i].pic1+"></div>");
}
}
}
});
加上$("#news").append("<div class='col-md-3 col-sm-3 wow fadeIn' data-wow-delay='0.6s'><input id="opener" type="image" src="+dts[i].pic1+"></div>");这行代码就进不去JS方法里 去掉就可以显示数据。怎么回事?求助= =
楼主可以从ajax异步请求响应的角度思考,首先对于一个异步操作,后续操作如果是必须等待结果返回的情况下去执行,就必须写在success方法的内部,而不能放在外面;其次,你需要检查一下你的后续代码是否产生了js错误,如果有错,那么会存在异步请求没有完成的情况下产生了错误,自然异步请求也就无法正常完成,自然也看不到相应的结果。谷歌浏览器F12调试模式,可以帮助你检测js的问题,可以尝试一下这样的调试,用以解决你的js问题。
字符串都不闭合了
$("#news").append("<div class='col-md-3 col-sm-3 wow fadeIn' data-wow-delay='0.6s'><input id='opener' type='image' src='"+dts[i].pic1+"'></div>");
你用一个append试试,把几个都写在一起看看。我是这样理解的,append是在id="news"后添加的,四条信息都是在一个news后添加,最后一个应该会覆盖前面内容或者是报错,我觉得这四个完全可以写在一起。