WEBIX:如何修改数据表过滤发送到服务器的查询

时间:2016-02-12 08:38:15

标签: webix

我正在使用Webix UI框架。我试图找到修改发送到服务器的查询的最佳方法,然后在数据表组件上过滤/请求来自服务器的数据。这同样适用于dataview和其他组件。

我发现在'save'上修改传递的参数非常简单:

onBeforeUpdate:function(id, o) {
  o.data.newVariable = newValue;
}

我可以在帖子请求中添加任意数量的字段。

当检索数据时,不太清楚的是访问要在查询中使用的数据。一种方法是使用registerFilter,但我认为这需要在虚拟列上创建,我宁愿避免。

我认为我可以通过以下方式轻松完成:

onBeforeFilter: function() {
  this.data.url = "script.php?field=value";
}

和webix注意保持我的查询字符串,并将其余的过滤器参数附加到它。

最合适的方法是什么?在过滤之前是否有其他方法可以访问和修改查询中的数据?

请分享您的想法。

1 个答案:

答案 0 :(得分:1)

您可以使用数据代理

http://docs.webix.com/desktop__server_proxy.html#creatingcustomproxyobjects

这是一段代码,它将作为组件和服务器端代码之间的代理。每当组件需要向服务器端发送请求时,将调用代理方法。因此,您将拥有完整的控制权,将哪些数据发送到服务器端。

webix.ui({
    view:"list",
    url:{
        $proxy:true,
        load:function(view, callback, state){
                //any data loading pattern here
                webix.ajax("some.php?a=1", callback, view);
        }
    }
});