Javascript 刷新时获取新数据的HTML
我有一个带有JavaScript的HTML页面,它读取JSON文件,并基于此JSON文件在屏幕上呈现一些数据。我需要定期(每10秒)刷新此页面,以便它捕获JSON文件中的更改。我正在做以下工作:Javascript 刷新时获取新数据的HTML,javascript,html,refresh,Javascript,Html,Refresh,我有一个带有JavaScript的HTML页面,它读取JSON文件,并基于此JSON文件在屏幕上呈现一些数据。我需要定期(每10秒)刷新此页面,以便它捕获JSON文件中的更改。我正在做以下工作: <meta http-equiv="refresh" content="2" /> 我还尝试在Java脚本中使用以下代码执行此操作: <script type="text/javascript"> setTimeout("location.reload(true);",20
<meta http-equiv="refresh" content="2" />
我还尝试在Java脚本中使用以下代码执行此操作:
<script type="text/javascript">
setTimeout("location.reload(true);",2000);
setTimeout(“location.reload(true);”,2000);
这两个版本都可以工作并定期刷新页面。但是,每当刷新发生时,它都不会从JSON文件中读取新数据。它只在我使用“刷新”按钮手动刷新页面时读取数据。有什么方法可以强制它在刷新时读取新数据吗?如果您可以使用JQuery创建第二个包含此html的页面,并将
url
变量设置为您当前访问的页面。如果你点击新页面,它应该每10秒刷新一次数据
<div id="div1">
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
var url = //path to your page that is currently working
reloadData = function() {
$.ajax({url: url, success: function(result){
$("#div1").html(result); //takes the content of your url and throws it into div1
}});
}
window.setInterval(reloadData, 10000);//every 10 seconds
});
</script>
$(文档).ready(函数(){
var url=//当前正在工作的页面的路径
重载数据=函数(){
$.ajax({url:url,success:function(result){
$(“#div1”).html(result);//获取url的内容并将其放入div1
}});
}
setInterval(重载数据,10000);//每10秒
});
您是否考虑过使用外部页面从csv获取数据并对其进行ajax调用?(类似于API)您能够设置CSV文件的expires头吗?如果是,则将其设置为过去。您也可以使用一些类似于不太熟悉AJAX的东西。。我该怎么做呢..你们熟悉php吗?谢谢你们的回答,伙计们。它是一个Json文件,包含我的输入,而不是csv。只是在ajax调用中添加了url变量。。。因此,如果您已经复制了代码,那么可以使用updateThis,但它也不会从我的JSON文件中捕获新内容。它一直显示旧数据,直到我手动点击刷新。每次刷新时,我都需要它来获取新数据。