按隐藏值排序html表

按隐藏值排序html表,html,html-table,bootstrap-4,bootstrap-table,Html,Html Table,Bootstrap 4,Bootstrap Table,我有一个html表,它使用引导表库按列值对数据进行排序。如果数据被表示为浮点或int,那么这很好,但是我有一列times。我希望使用%hr&%min格式的字符串表示时间,但由于时间是字符串,因此不可对其进行数据排序。在下面的示例中,“15小时2分钟”比“32分钟”大得多,但是排序将把“32分钟”放在顶部,因为它以3开头 在对不同的隐藏数据集(总分钟数)进行排序时,是否有办法让表显示我的人类可读值 为了清楚起见,表必须是可交互的,以便用户可以选择按哪些列对数据进行排序 名称 距离 旅行时间 创

我有一个html表,它使用引导表库按列值对数据进行排序。如果数据被表示为浮点或int,那么这很好,但是我有一列times。我希望使用%hr&%min格式的字符串表示时间,但由于时间是字符串,因此不可对其进行数据排序。在下面的示例中,“15小时2分钟”比“32分钟”大得多,但是排序将把“32分钟”放在顶部,因为它以3开头

在对不同的隐藏数据集(总分钟数)进行排序时,是否有办法让表显示我的人类可读值

为了清楚起见,表必须是可交互的,以便用户可以选择按哪些列对数据进行排序


名称
距离
旅行时间
创建日期
示例名称
15.1
15小时和2分钟
2018-02-11 18:15:15
示例名称2
10.1
32分钟
2018-02-11 18:19:05

好的,根据我的评论,这里是一个基于JavaScript格式的表数据的答案(它同样可以是JSON API返回)

该表与您的示例相同,数据字段在
中定义,但:

  • 使用引导表JavaScript初始化从数组注入表数据
  • 为行程时间字段定义格式化程序和分类器功能
  • 为了方便起见,我使用了这个库来处理日期和持续时间
  • var数据=[{
    名称:'示例名称',
    距离:15.1,
    行程时间:15*60+2,/“15小时2分钟”,
    创建:时刻('2018-02-11 18:15:15')。toDate(),
    }, {
    名称:“示例名称3”,
    距离:25.1,
    行程时间:24*60+2,/“15小时2分钟”,
    创建:时刻('2018-02-11 18:25:15')。toDate(),
    }, {
    名称:“示例名称2”,
    距离:10.1,
    旅行时间:32分,
    创建:时刻('2018-02-11 18:19:05')。toDate(),
    }]
    函数格式TravelTime(值、行、索引、字段){
    返回时刻。持续时间(值“分钟”)。人性化()
    }
    //这种情况下不需要这样做,但作为分拣机的一个示例
    功能travelTimeSorter(a、b){
    返回ab-1:0)
    }
    $(函数(){
    $(“#表”).bootstrapTable({
    数据:数据
    });
    });
    
    
    名称
    距离
    旅行时间
    创建日期
    
    您使用什么进行排序?你能给TD元素添加一个带有分或秒值的数据字段(例如,
    数据sortvalue
    )吗?如果存在,则按该字段而不是TD的内容进行排序?我正在使用引导插件引导表来处理排序。我已经用一个代码片段更新了我的问题,显示了它的作用。我已经添加了标签
    引导表
    ,因此可能有人对此有帮助。@JoshKidd,你是否愿意用JSON或JavaScript而不是像你的例子那样用HTML来维护表的源数据?这将使您能够使用引导表格式化程序和分类器功能,从而获得所需的结果。让我知道,很高兴用一个这样的例子来回答这个问题。我用一个jinja2 for循环来用html填充数据。如果方便的话,我可以换成json/javascript。