将制表器数据写回服务器-RESTful

时间:2019-02-19 21:53:08

标签: rest post crud put tabulator

我只是喜欢Tabulator!我已经成功地使用它来格式化从SaaS的REST服务检索的传入数据的表。响应很容易实现到Tabulator中并显示在自定义表单(JSP页面)上。 s 与许多人一样,我的愿望是将POST,PUT,DELETE发送到Jthe制表器JSON格式的数据更改和删除的REST服务。我知道Tabulator不适用于CRUD流程,但是我可以从一个示例中了解“最佳实践”或编码模式是如何实现的。我看到了添加一个Tabulator方法的请求,该方法仅返回更改,但这不是当前实现的(或者可能从未实现)。

我将使用“保存”按钮来启动对REST服务的方法/函数/调用以处理JSON。对于如何处理已删除,已更改以及已添加到虚拟DOM中的内容,以便为REST调用提取该信息,我有些困惑。

先谢谢了。示例将不胜感激。

罗恩狗

1 个答案:

答案 0 :(得分:0)

如何处理此问题取决于服务器中代码的设置方式。有几种选择。

将所有数据发送回

您可以使用 getData 函数检索所有表数据,然后一次性将其发送回去,然后对行中的所有数据进行更新操作在表中,然后检查是否有缺失。

var data = table.getData();

跟踪更改

您可以使用 cellEdited 回调来跟踪单元格的编辑时间,然后存储行数据以供以后上载到服务器

var table = new Tabulator("#example-table", {
    cellEdited:function(cell){
        //cell - cell component
     
        var row = cell.getRow();

        //store row component for later use when sending data back to server 
    },
});

然后可以通过 rowAdded 回调

对新行采取类似的方法
var table = new Tabulator("#example-table", {
    rowAdded:function(row){
        //row - row component

        //store row component for later use when sending data back to server 
    },
});

对于使用 rowDeleted 回调

的已删除行也是如此
var table = new Tabulator("#example-table", {
    rowDeleted:function(row){
        //row - row component

//store row component for later use when sending data back to server 
    },
});