这个获取系统年月的问题,是怎么个问题
代码:<script>
$(document).ready(function(){
var myDate = new Date();
var year=myDate.getFullYear();
var month=myDate.getMonth()+1;
var date=myDate.getDate();
str="";
for (i=1950;i<2049;i++){
str+="<option value='"+i+"'>"+i+"年</option>";
}
$("#year_select").append(str);
$("#year_select").find("option:contains('"+year+"年')").attr("selected",true);
str="";
for (i=1;i<13;i++){
str+="<option value='"+i+"'>"+i+"月</option>";
}
$("#month_select").append(str);
$("#month_select").find("option:contains('"+month+"月')").attr("selected",true);
//console.log(str)
//console.log(month);
});
</script>
代码的本意是 让网页的select元素 自动显示当前系统的年份月份
好,问题来了:
首次运行 ,没有问题,select里老老实实的待着当前系统的年月
那么我们修改一下系统日期(windows 右下角) 此时,无论如何刷新当前页那个select里 当前显示值 就是没有变化,但是,把网页关掉重新打开又能正常显示了
可能是因为浏览器缓存机制的原因吧,你之前获取过时间,信息已经存在缓存中,没有到缓存过期时间,所以数据还没有进行更新.所以出现这么个情况,系统时间修改但是缓存中的时间却没有更改.话说这个情况会有应用么?在第一次加载的时候能够获取到正确时间不就好了么?
推荐给你个阅读看看,希望能对你有帮助 https://segmentfault.com/a/1190000017962411 542624047 发表于 2020-3-12 20:54
可能是因为浏览器缓存机制的原因吧,你之前获取过时间,信息已经存在缓存中,没有到缓存过期时间,所以数据还没 ...
我知道没啥用,只是想知道为什么
页:
[1]