如何解决在制表符行操作中计算日期时间差
我有一种情况,我想计算两行之间以分钟为单位的时间差,并在连续行中包含数据。我正在使用tabulator。 目前,我已经遍历了custom formatters的定义,该定义是针对列的,但是我不确定如何在行上实现这种情况。但是,我尝试了以下选项,但它似乎不起作用。
var table = new Tabulator("#editor",{
downloadConfig:{
columnGroups:false,rowGroups:false,},height:360,data: arrayFlight,pagination:"local",resizableColumns: false,paginationSize:12,columnVertAlign:"center",columnHoriAlign:"center",columns:[
{title:"Start time",field:"sTime",align:"center",formatter:"datetime",formatterParams:{inputFormat:"DD-MM-YYYY hh:mm:ss",outputFormat:"DD-MM-YYYY hh:mm:ss",invalidplaceholder:"-"},sorter:false,headerSort:false,width:95},{title:"End time",field:"eTime",outputFormat:"DD-MM-YY hh:mm:ss",{title:"Duration",field:"durTime",calc: sTime-eTime,],
这是我想对此进行可视化的方式:
我们非常感谢您的帮助。
解决方法
@Adrian Klaver认为正确的方法是使用Muataor计算新列的值
而且正如@adrian所说的那样,您所看到的错误与他的建议无关。
从本质上讲,您首先要创建一个增变函数,该函数将接收行数据,然后根据该行数据为该列返回一个新值。
var durationMutator = function(value,data){
//value - original value of the cell
//data - the data for the row
var start = new Date(data.sTime);
var end = new Date(data.eTime);
return end - start ;
}
然后您可以将其分配给 mutator 属性的持续时间列:
{title:"Duration",field:"durTime",mutator:durationMutator},
这就是您需要做的所有事情。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。