发送ajax请求到后台获取的数据不能显示到弹框<div>中

点击按钮发送ajax请求到后台获取的数据,div能弹出来,但是下面的数据不显示,如下图(块里面为空,无数据,只有表头):在html的<script>标签中的代码:红框①中... 点击按钮发送ajax请求到后台获取的数据,div能弹出来,但是下面的数据不显示,如下图(块里面为空,无数据,只有表头):

在html的<script>标签中的代码:

红框①中的数据都获取到了但是不显示到块中;粉框②是拼接的html,不显示数据的问题估计就出在这里,其他地方元素都显示正常。
我的逻辑是,从服务器取出的数据填进这个div中,但就是不显示。是不是还缺点什么?是异步的问题吗?
展开
 我来答
sunjinfu1987
推荐于2018-09-24 · TA获得超过3151个赞
知道大有可为答主
回答量:1218
采纳率:72%
帮助的人:411万
展开全部
异步引起的问题。你应该在success函数最后把拼接好的html显示在div中,然后再显示。

做法:定义好一个带有表头的空表格,隐藏它,待加载完数据再显示即可。
<table id="t2" style="display:none">
<tr>表头</tr>
</table>
$.ajax({
type: "POST",
url: "<%=path %>/two",
dataType: "json",
data:{'liDu':liDu,'startTime':startTime,'endTime':endTime},
success: function(returnedData){
var html = "";
var tdHead = "<td height='20'><div align='center'><span class='STYLE1'>";
var tdFoot = "</span></div></td>";
$("#t2 tr:gt(0)").remove();//每次刷新,但是不移除表头第一行。
for(var i=0;i<returnedData.length;i++){
var countInfo = returnedData[i];
var totalCount = countInfo.totalCount;
var sucCount = countInfo.sucCount;
var failCount = countInfo.failCount;
var unknowCount = countInfo.unknowCount;
var sucPercent = countInfo.sucPercent;
var failPercent = countInfo.failPercent;
var unknowPercent = countInfo.unknowPercent;
var countTimeZone = countInfo.countTimeZone;
html += "<tr>" + tdHead + (i + 1) + tdFoot +
tdHead + totalCount + tdFoot +
tdHead + sucCount + tdFoot +
tdHead + sucPercent + tdFoot +
tdHead + failCount + tdFoot +
tdHead + failPercent + tdFoot +
tdHead + unknowCount + tdFoot +
tdHead + unknowPercent + tdFoot +
tdHead + countTimeZone + tdFoot + "</tr>";
}
$("#t2").append(html);
$("#t2").show("slow");//我这是一个表格。
}
});
望美人xi天一方
2015-11-24 · 超过19用户采纳过TA的回答
知道答主
回答量:63
采纳率:0%
帮助的人:21.1万
展开全部
你ajax的success回调函数中只是创建了这个div#light这个元素,没有把它追加到文档流中,而且ajax是异步进行的,最后的$('#light').show(); 执行时还没有获得返回都的数据
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
极悟看见人生
推荐于2018-03-15 · 1、极悟希望让更多人走出痛苦和内耗,让更多处在痛苦煎熬中的人...
极悟看见人生
采纳数:50 获赞数:131

向TA提问 私信TA
展开全部
你只是输出拼接了字符串,但是并没有在指定位置追加数据填充html代码。

尝试 利用 $("#xxxx").html("") 或 append() 都行
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式