1 回答
TA贡献1831条经验 获得超4个赞
这不是真正的 DataTables 问题,但它很有趣,所以这就是我的工作:
(() => {
setInterval(() => {
const table = document.getElementById("dataTable")
for (var i = 0, row; row = table.rows[i]; i++) {
const dueDate = row.querySelector('.due-date')
if (dueDate) {
const dateBits = dueDate.innerHTML.split('/')
const dateDue = new Date(dateBits[2], dateBits[1], dateBits[0]).getTime()
const now = new Date().getTime()
const distance = dateDue - now
const countDownDate = row.querySelector('.text-warning')
if (distance < 0) {
countDownDate.innerHTML = 'EXPIRED'
} else {
const days = Math.floor(distance / (1000 * 60 * 60 * 24));
const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
const seconds = Math.floor((distance % (1000 * 60)) / 1000);
countDownDate.innerHTML = `Remaining time ${days} Days ${hours} hours ${minutes} minutes ${seconds}s`
}
}
}
}, 1000)
})()
我们在这里所做的是每秒抓取表格,遍历表格行并检查是否有适当的单元格称为due-date。如果存在,那么我们检查距离,如果它是负数,那么我们将具有类的单元格设置text-warning为EXPIRED否则,我们添加适当的消息。我希望这有帮助吗?在这里工作 JSFiddle 。
添加回答
举报