从表列中检索日期,并根据从今天到日期之间的天数使行的颜色发生变化
Retrieve date from a table column and make the rows change color depending on the amount of days between today and the date
我是javascript的新手,想知道如何从每一行中获取日期td,计算该日期和当前日期之间的天数,如果数字大于100,则使这些行具有红色背景。这是代码:
<html>
<head>
<title>Due Bills</title>
<link rel="stylesheet" type="text/css" href="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/css/jquery.dataTables.css">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.2.min.js"></script>
<script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.4/jquery.dataTables.min.js"></script>
<script>
$(document).ready(function() {
$('#example').DataTable( {
responsive: true
} );
$('checkdate').on( {
var today = new Date();
var currDate = today.getDate();
var date2 = new Date(2015,1,15);
var timeDiff = Math.abs(currDate.getTime() - date2.getTime());
var diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));
if(diffDays > 100){
$("#example tr").css('background-color', '#FF0000');
}
} );
} );
</script>
</head>
<body>
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Date</th>
<th>Salary</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Date</th>
<th>Salary</th>
</tr>
</tfoot>
<tbody>
<tr>
<td>Tiger Nixon</td>
<td>System Architect</td>
<td>Edinburgh</td>
<td>61</td>
<td class="checkdate">2011/04/25</td>
<td>$320,800</td>
</tr>
<tr>
<td>Garrett Winters</td>
<td>Accountant</td>
<td>Tokyo</td>
<td>63</td>
<td class="checkdate">2011/07/25</td>
<td>$170,750</td>
</tr>
<tr>
<td>Ashton Cox</td>
<td>Junior Technical Author</td>
<td>San Francisco</td>
<td>66</td>
<td class="checkdate">2009/01/12</td>
<td>$86,000</td>
</tr>
<tr>
<td>Cedric Kelly</td>
<td>Senior Javascript Developer</td>
<td>Edinburgh</td>
<td>22</td>
<td class="checkdate">2012/03/29</td>
<td>$433,060</td>
</tr>
<tr>
<td>Airi Satou</td>
<td>Accountant</td>
<td>Tokyo</td>
<td>33</td>
<td class="checkdate">2008/11/28</td>
<td>$162,700</td>
</tr>
<tr>
<td>Brielle Williamson</td>
<td>Integration Specialist</td>
<td>New York</td>
<td>61</td>
<td class="checkdate">2012/12/02</td>
<td>$372,000</td>
</tr>
<tr>
<td>Herrod Chandler</td>
<td>Sales Assistant</td>
<td>San Francisco</td>
<td>59</td>
<td class="checkdate">2012/08/06</td>
<td>$137,500</td>
</tr>
<tr>
<td>Rhona Davidson</td>
<td>Integration Specialist</td>
<td>Tokyo</td>
<td>55</td>
<td class="checkdate">2010/10/14</td>
<td>$327,900</td>
</tr>
<tr>
<td>Colleen Hurst</td>
<td>Javascript Developer</td>
<td>San Francisco</td>
<td>39</td>
<td class="checkdate">2009/09/15</td>
<td>$205,500</td>
</tr>
<tr>
<td>Sonya Frost</td>
<td>Software Engineer</td>
<td>Edinburgh</td>
<td>23</td>
<td class="checkdate">2008/12/13</td>
<td>$103,600</td>
</tr>
<tr>
<td>Jena Gaines</td>
<td>Office Manager</td>
<td>London</td>
<td>30</td>
<td class="checkdate">2008/12/19</td>
<td>$90,560</td>
</tr>
<tr>
<td>Quinn Flynn</td>
<td>Support Lead</td>
<td>Edinburgh</td>
<td>22</td>
<td class="checkdate">2013/03/03</td>
<td>$342,000</td>
</tr>
<tr>
<td>Charde Marshall</td>
<td>Regional Director</td>
<td>San Francisco</td>
<td>36</td>
<td class="checkdate">2008/10/16</td>
<td>$470,600</td>
</tr>
<tr>
<td>Haley Kennedy</td>
<td>Senior Marketing Designer</td>
<td>London</td>
<td>43</td>
<td class="checkdate">2012/12/18</td>
<td>$313,500</td>
</tr>
</tbody>
</table>
</body>
您可以使用document.getElementById(表的ID)引用表。
然后,您可以遍历这些行,获取日期值,计算差值,并相应地更改表。
<script>
var table = document.getElementById("example");
for(var i = 0; i < table.rows.length; i ++) {
var d = new Date(table.rows[i].cells[4].innerHTML).getTime();
var difference = new Date().getTime();
console.log(((difference - d)/86400000) > 100);
if(((difference - d)/86400000) > 100)
table.rows[i].style.background = "red";
}
</script>
相关文章:
- 比较从函数和生成的日期对象
- Json数据包含日期和时间格式
- Javascript日期格式类似于ISO,但本地
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 单击页面上的链接后高度发生变化
- 如何在JavaScript中延长当前日期
- 两位数的月份日期验证
- 更改angularjs中的日期-时间格式
- 将日期时间作为 JSON 发送将无法在我的视图中正确显示
- 将日期时间从json转换为可读格式
- NodeJS日期格式不起作用
- 从表列中检索日期,并根据从今天到日期之间的天数使行的颜色发生变化
- 提交表单后,文本框中的日期会发生变化
- 发送到前端后,mysql 列中的日期发生了变化
- Highcharts日期格式随数据变化
- 随月份变化的两个日期之间的差
- 我如何使用jQueryUI日期picker onSelect,但也在我的主干视图的变化事件
- 如何重载下拉下拉每个单选按钮上的变化和日期文本框的变化
- 如何知道日期是否有变化的日期picker jQuery
- Javascript字符串在转换为日期()时发生变化