Javascript 到期日期更改时动态更新项目

Javascript 到期日期更改时动态更新项目,javascript,html,Javascript,Html,我有一个项目代码列表,当它们的日期到期时必须自动更新 共有3个代码,每个代码具有不同的开始日期和结束日期以及必须更改的时间 当一个代码过期时,它必须自动更新并反映HTML中的更改 我在这里有点迷路了,非常感谢您的帮助 我目前的设置如下: HTML 还有..这就是我被难住的地方..请帮忙 您需要在加载窗口时运行此功能,并使用setInterval连续检查代码有效性 window.onload = function(){ var dateList = { code:["123

我有一个项目代码列表,当它们的日期到期时必须自动更新

共有3个代码,每个代码具有不同的开始日期和结束日期以及必须更改的时间

当一个代码过期时,它必须自动更新并反映HTML中的更改

我在这里有点迷路了,非常感谢您的帮助

我目前的设置如下:

HTML


还有..这就是我被难住的地方..请帮忙

您需要在加载窗口时运行此功能,并使用
setInterval
连续检查代码有效性

 window.onload = function(){
   var dateList = {
        code:["1234", "5678", "4321"],
        sd:["7/9/2018, 9/10/2018, 12/05/2018"],   // start date
        ed:["11/12/2018, 1/02/2019, 2/20/2019"], //  end date
        time:["6:00AM, 6:00AM, 6:00AM"]
   }
   var check;
   //setInterval is for continuously checking the validity of the codes
   check = setInterval(function(){
     var codes = dateList.code;
     var enddates = dateList.ed;
     for(var i = 0; i < codes.length; i++){
        var now = new Date();
        now.setHours(0,0,0,0);
        if(enddates[i] < now){
          //change code because it has expired
          dateList.code[i] = Math.floor(Math.random()*10000);
       }
     }
  }, 1000); //1000 is time in milliseconds
}
window.onload=function(){
变量日期列表={
代码:[“1234”、“5678”、“4321”],
sd:[“2018年7月9日、2018年9月10日、2018年12月5日”],//开始日期
ed:[“2018年11月12日,2019年2月1日,2019年2月20日],//结束日期
时间:[“6:00AM,6:00AM,6:00AM”]
}
var检查;
//setInterval用于连续检查代码的有效性
检查=设置间隔(函数(){
var代码=dateList.code;
var enddates=dateList.ed;
对于(变量i=0;i
这似乎不包括任何问题?你到底想知道什么?我不明白为什么你会静态地保留产品的过期日期,即使这只是一个编码练习。最好执行AJAX调用来检查代码是否过期并且需要更改(应该在服务器端完成)@ZombieChowder每个项目都有一个设置的开始日期和结束日期…第一个代码的开始日期是今天。我静态地将日期放在一个数组中,在数组中循环,并在验证值的基础上返回正确的代码。感谢您使用此解决方案进行响应,我非常感谢。我无法在HTML中反映这一点。我尝试使用jQuery并将结果显示为$(“.itemCode”).html(检查)@scrippyfingers
check
是用于检查的
setInterval
,因此,它不应用作元素的
html
。如果要显示新代码,请尝试
$('.itemCode').html(dateList.code[i])
。但是,这将使具有
itemCode
类的所有元素显示新代码,这可能不是您想要的。考虑使用<代码>跨度>代码>使用特定的<代码> ID >代码>显示代码。
function update(){
        var dateList = {
            code:["1234", "5678", "4321"],
            sd:["7/9/2018, 9/10/2018, 11/02/2018"],   // start date
            ed:["9/10/2018, 11/02/2018, 01/20/2019"], //  end date
            time:["6:00AM, 6:00AM, 6:00AM"]
        }
    }
 window.onload = function(){
   var dateList = {
        code:["1234", "5678", "4321"],
        sd:["7/9/2018, 9/10/2018, 12/05/2018"],   // start date
        ed:["11/12/2018, 1/02/2019, 2/20/2019"], //  end date
        time:["6:00AM, 6:00AM, 6:00AM"]
   }
   var check;
   //setInterval is for continuously checking the validity of the codes
   check = setInterval(function(){
     var codes = dateList.code;
     var enddates = dateList.ed;
     for(var i = 0; i < codes.length; i++){
        var now = new Date();
        now.setHours(0,0,0,0);
        if(enddates[i] < now){
          //change code because it has expired
          dateList.code[i] = Math.floor(Math.random()*10000);
       }
     }
  }, 1000); //1000 is time in milliseconds
}