首页 > 解决方案 > 如何检查结束时间和开始时间是否与javascript相等

问题描述

我有一组数据,第一列显示个人旅行 ID,第二列显示开始时间,第三列显示结束时间。

数据存储在 SQL Server 中,并使用 PHP fetch 数组 while 循环生成。

我想知道如何使用 javascript 检查第一行的开始时间是否等于第二行的结束时间。如果检测到结束时间和开始时间不相等,我希望 javascript 能够打印“FALSE”。任何人都可以建议吗?谢谢

图像是我想要实现的输出

下面是我的代码:

    $tripdate = date("Y-m-d", strtotime($displaydate));
    $vesselcde = $vesselcode."%";

    $query_get_activity = " SELECT a.trip_id, b.start_time, b.end_time, c.activity_name FROM TRIP a JOIN ACTIVITY b ON a.trip_no = b.trip_no 
    JOIN ACTIVITY_TYPE c ON b.activity_id = c.activity_id WHERE trip_date = ? and trip_id LIKE ? ORDER BY a.trip_id";
    $params_get_activity = array($tripdate, $vesselcde);
    $stmt_get_activity = sqlsrv_query($conn, $query_get_activity, $params_get_activity);

while( $row = sqlsrv_fetch_array( $stmt_get_activity, SQLSRV_FETCH_ASSOC) ){

                                $tripid = $row['trip_id'];
                                $starttime = $row['start_time']->format('H:i');
                                $endtime = $row['end_time']->format('H:i');
                                $activitytype = $row['activity_name'];
                ?>          
                    <form class="form-inline">

                            <div class="timerows">
                                 <div class="form-group">

                                    <label for="tripid"><?php echo $tripid;?></label>
                                    <input type="text" name="start_time" id="start_time" class="form-control mx-sm-3" value="<?php echo $starttime; ?>">
                                    <input type="text" name="start_time" id="end_time" class="form-control mx-sm-3" value="<?php echo $endtime; ?>">
                                    <!--<label for="activitytype"><?php echo $activitytype;?></label>-->
                                    <input type="text" id="checktime" value="TRUE">
                                </div>
                            </div>

                    </form>
                <?php                   
                    }

                ?>

标签: javascriptphpsqlarrays

解决方案


我不太熟悉,php但我相信你可以在javascript. 这段代码将帮助您根据您的javascript使用情况获取您可以在代码中使用的值。

function myFunction() {

var refTab = document.getElementById("ddReferences")
var  ttl;
// Loop through all rows and columns of the table and popup alert with the value
// /content of each cell.
var prev_val;
var new_val;
for ( var i = 0; row = refTab.rows[i]; i++ ) {
   row = refTab.rows[i];
   for ( var j = 0; col = row.cells[j]; j++ ) {
      if ( j == 1){
           new_val = col.firstChild.nodeValue
           if ( new_val == prev_val){
                var x = document.getElementById("ddReferences").rows[i].cells;
                x[3].innerHTML = "True";
           }
           else {  
                var x = document.getElementById("ddReferences").rows[i].cells;
                x[3].innerHTML = "False";
           }
           
      }
      else if ( j == 2) {
           prev_val = col.firstChild.nodeValue
      }
      //alert(col.firstChild.nodeValue);  /// this is for showing value
   }
}

}
table, td {
  border: 1px solid black;
}
<!DOCTYPE html>
<html>
<head>
</head>
<body>

<p>Click the button to alert the innerHTML of the cell in the table's row.</p>


<table id='ddReferences'>
    <tr>
      <td>val1</td> 
      <td>6:20</td>
      <td>6:30</td>
      <td> </td>
    </tr>
    
    <tr>
      <td>val2</td> 
      <td>6:30</td>
      <td>7:30</td>
      <td> </td>
    </tr>
    <tr>
      <td>val2</td> 
      <td>7:40</td>
      <td>8:30</td>
      <td> </td>
    </tr>
  </table>
<br> 

<button onclick="myFunction()">Try it</button>


</body>
</html>


推荐阅读