jquery - 如何使用jquery ajax实时更新div内容
问题描述
所以我正在处理我的项目,我想做的是实时从我的数据库中获取并使用 j-query ajax 在我的 div 中实时显示(这是 3 个垃圾箱)有人可以帮我吗
我已经使用纯 ajax 完成了,我想使用 j-query 应用它,请有人帮我解决这个问题
function binload() {
var ajax = new XMLHttpRequest();
ajax.open("GET", "tank.php", true);
ajax.onload = function(){
document.getElementById("water1").style.height = ajax.responseText;
document.getElementById("water2").style.height = ajax.responseText;
document.getElementById("water3").style.height = ajax.responseText;
}
ajax.send();
ajax.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var data = JSON.parse(this.responseText);
console.log(data);
var html = "";
for(var a = 0; a < data.length; a++) {
var ID = data[a].ID;
var Bio = data[a].Bio;
var Non_Bio = data[a].Non_Bio;
var Recy = data[a].Recy;
var Extra = data[a].Extra;
}
document.getElementById("data").innerHTML += html;
var obtained = Bio;
var obtained2 = Non_Bio;
var obtained3 = Recy;
var div = 5000;
var obt = obtained*100/div;
var obt2 = obtained2*100/div;
var obt3 = obtained3*100/div;
console.log(obt);
console.log(obt2);
console.log(obt3);
document.getElementById("water1").style.height = obt + "%";
document.getElementById("water2").style.height = obt2 + "%";
document.getElementById("water3").style.height = obt3 + "%";
}
};
}
.tank {
width: 150px;
height: 300px;
border: 2px solid black;
background: white;
position: relative;
display: inline-block;
margin: 10px;
}
.tank .water {
position: absolute;
background: blue;
width: 100%;
bottom: 0;
}
<body onload="binload()">
<div class="tank">
<div class="water" id="water1" ></div>
</div>
<div class="tank">
<div class="water" id="water2"></div>
</div>
<div class="tank">
<div class="water" id="water3"></div>
</div>
这是我的php代码
<?php
$conn = mysqli_connect("localhost", "root", "", "trashbin");
$result = mysqli_query($conn, "SELECT * FROM trash");
$data = array();
while ($row = mysqli_fetch_object($result))
{
array_push($data, $row);
}
echo json_encode($data);
exit();
有人可以帮我解决这个问题,非常感谢:)
解决方案
你可以用普通的 javascript 来做。像这样
setInterval(binload,1000);
它将在每 1 秒后调用该函数。
推荐阅读
- angular - *ngIf 具有复合条件性能
- jquery - .NET MVC 模态表单提交
- php - 检查父目录是否包含在文件路径中
- ruby-on-rails - 谁在运行 Puma 或 Passenger 时设置 RAILS_MAX_THREADS 环境变量?
- java - 将 mongodb 与 asp.net 或 mysql 一起用于 react-native 应用程序好吗?
- c# - Attribute extraction from itext.layout.element in c#
- c++ - A pointer to const int in c++
- javascript - 如何让我的用户脚本永久记住输入值?
- r - 使Shapefile的属性成为R中的可选超链接
- minizinc - 提高优化级别会导致错误