请问ajax更新了数据库之后为什么前台页面不会自动的显示添加的内容啊?必须刷新才会显示请各位高手帮帮忙

请问ajax更新了数据库之后为什么前台页面不会自动的显示添加的内容啊?必须刷新才会显示请各位高手帮帮忙,第1张

ajax就是为了让页面不刷新,因为刚才的ajax执行了,你对数据库的 *** 作成功了·所以界面上的内容变化了·他刷新了。如果想ajax执行完了还要刷新,用$("#a").load()用jqeray取到这个你想刷新的div的jq对象,可以让他单个区域刷新。

Ajax是:

AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

AJAX 不是新的编程语言,而是一种使用现有标准的新方法。

AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。

首先看一下在console中运行的结果:

onreadystatechange 这一步起到了监听的作用:

通俗点说就是:

onreadystatechange监听readyState。

readyState属性一旦变化,就能触发onreadystatechange函数的执行!这是官网上告诉我们的。

值得注意:官网上的叙述有些歧义, 我们可以看到,当xhr.readyState == 4完成时,函数才开始执行!

异步引起的问题。你应该在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=0i<returnedData.lengthi++){

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")//我这是一个表格。

}

})

ajax异步请求数据,在前端用js拼接也好,在后端拼接整体当作字符串返回给前端也好,前端拿到数据传到html中时会发现,拼接的html的css已经失效。

然后发现样式失效之后,页面展示就这样了

后来才发现,在ajax回调中,需要再次调用一下jquery *** 作dom的方法,如图下图所示

经过重新渲染之后,页面很快就趋于平整啦。

完!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9999318.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存