【问题标题】:Tabulator adding new row is not applied custom sort defined未应用添加新行的制表符自定义排序定义
【发布时间】:2020-11-11 10:50:26
【问题描述】:

我正在使用制表符 4.8.4。我在列中使用排序器功能定义了客户排序的制表器。在首次加载期间正确应用排序。当我添加新行时,自定义排序不适用。

table.addData([{
         orderNO: order.orderId,
        },false]);

它将根据传递的布尔值插入顶部或底部。我必须调用下面的方法来为新添加的行应用排序

table.setSort(table.getSorters());

现在的问题是,当新行添加的表格焦点移动到顶部时。它非常难以导航行意味着当额外的行进来时。每次添加的行都在移动到顶部。我试图在添加新行之前获取当前滚动位置

 scrollVertical:function(top){
        position = top;
        console.log('position'+top);
    }

但是我没有找到在 table redrwan 之后将焦点设置到这个位置的方法。请建议并让我知道我在这里做错了什么

【问题讨论】:

    标签: tabulator


    【解决方案1】:

    addRow 或 addData 函数专门设计为在添加新行时不会对表格重新排序,因为这对用户来说是一种非常不和谐的体验。

    如果您需要这样做,那么我建议您使用addRow 函数,然后在新行上调用scrollTo 函数以在排序完成后将其滚动到视图中

    table.addRow({orderNO: order.orderId})
    .then((row) => {
        table.setSort(table.getSorters());
        row.scollTo();
    });
    

    【讨论】:

    • 我可以通过设置 $(".tabulator .tabulator-tableHolder").scrollTop(position);
    猜你喜欢
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多