如果传递了DateTime变量,则使用Javascript更改Div类

如果传递了DateTime变量,则使用Javascript更改Div类,javascript,php,jquery,html,css,Javascript,Php,Jquery,Html,Css,早上好,我已经为用PHP和Javascript编写的工作编写了一个仪表板。它从我们的数据库中提取数据,用一个破折号类显示Div中的事件,显示$nextupdate变量,我需要编写一些Js来比较DateTime,如果$nextupdate变量时间已经过去,那么我需要将Div类更改为。过期了,我正在努力找出解决这个问题的最佳方法 任何帮助都将不胜感激 问候 史蒂夫试试这个: $nextupdate; // got from the database $now = date(); $divClass

早上好,我已经为用PHP和Javascript编写的工作编写了一个仪表板。它从我们的数据库中提取数据,用一个破折号类显示Div中的事件,显示$nextupdate变量,我需要编写一些Js来比较DateTime,如果$nextupdate变量时间已经过去,那么我需要将Div类更改为。过期了,我正在努力找出解决这个问题的最佳方法

任何帮助都将不胜感激

问候

史蒂夫

试试这个:

$nextupdate; // got from the database
$now = date();
$divClass = "";
if(strtotime($now) > strtotime($nextupdate) ){
    $divClass="overdue";
}else{
    $divClass="whatever";
}
然后:

<div class="<?php echo $divClass; ?>"></div>

这非常适合在过期时将Div颜色更改为红色,尽管我没有解释我有多个Div

这是我的Div代码

    //Gather all Posted HPi tickets raised
$sql = "Select *
From hpi_calls 
where status!='Closed'
and (Priority='P1' or Priority='M1')
order by NextUpdate Asc";

$result = $conn->query($sql);

$statuslist = "";



if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        $SR = $row["SR"];
$Priority = $row["Priority"];
$Customer = $row["Customer"];
$BDescription = $row["BDescription"];
$Team = $row["Team"];
$Engineer = $row["Engineer"];
$OpenTime = $row["OpenTime"];
$Status = $row["Status"];
$LastUpdate = $row["LastUpdate"];
$NextUpdate = $row["NextUpdate"];
$Owner = $row["Owner"];
$FDescription = $row["FDescription"];
$ASites = $row["ASites"];
$LoggingTeam = $row["LoggingTeam"];
$OwningTeam = $row["OwningTeam"];
$FUpdate = $row["FUpdate"];
$Supplier = $row["Supplier"];

$NextUpdate;
$now = date("Y-m-d H:i");
$divClass = "";
if(strtotime($now) > strtotime($NextUpdate) ){
    $divClass="Overdue";
}else{
    $divClass="Dash";
}


    $statuslist .= '<div id="status_'.$SR.'" class=" '.$divClass.'"><h2>'
            .$SR.'</h2><h2>'.$Customer.'</h2><h2>'.$Priority.'</h2> - '.$Status.'<br><h2>Next Update Due:<br>'.$NextUpdate.'</h2></div>';
               } 




} 
//收集所有已发布的HPi票据
$sql=“选择*
来自hpi_电话
何处状态!=“已关闭”
和(Priority='P1'或Priority='M1')
按下一个日期Asc订购”;
$result=$conn->query($sql);
$statuslist=“”;
如果($result->num_rows>0){
//每行的输出数据
而($row=$result->fetch_assoc()){
$SR=$row[“SR”];
$Priority=$row[“Priority”];
$Customer=$row[“Customer”];
$b说明=$row[“b说明”];
$Team=$row[“Team”];
$Engineer=$row[“Engineer”];
$OpenTime=$row[“OpenTime”];
$Status=$row[“Status”];
$LastUpdate=$row[“LastUpdate”];
$NextUpdate=$row[“NextUpdate”];
$Owner=$row[“Owner”];
$FDescription=$row[“FDescription”];
$ASites=$row[“ASites”];
$LoggingTeam=$row[“LoggingTeam”];
$OwningTeam=$row[“OwningTeam”];
$FUpdate=$row[“FUpdate”];
$Supplier=$row[“Supplier”];
$NextUpdate;
$now=日期(“Y-m-d H:i”);
$divClass=“”;
if(strotime($now)>strotime($NextUpdate)){
$divClass=“过期”;
}否则{
$divClass=“Dash”;
}
$statuslist.=''的
.$SR.'.$Customer.'.$Priority.-.$Status.'
下一次更新到期:
“.$NextUpdate.”; } }
以上是从DB中选择并发布到DIV的完整代码

问候


Steve

如果我们能看到您的代码片段,我们会提供帮助,以便更好地了解您的想法。为什么您需要在前端的JS中这样做?如果您有一个php变量,为什么不使用strotime()将其转换为整数,然后获取当前时间并简单地比较哪个更大。然后在if条件中使用它在需要的地方添加类。如果有原因你不能这样做,请发布你的代码,并解释为什么需要在JS中这样做。你也在使用一个库-jquery,angular等等感谢你的实际工作。。。我忘了把服务器时区改成伦敦。。。为你的帮助干杯