有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在Listgrid的过滤器编辑器中编辑数据不会导致获取数据

我有一个过滤器编辑器设置为可见的ListGrid。 通常,若我在过滤器编辑器中键入数据,它将导致从服务器获取数据,并调用我的executeFetch(..)方法

但在某些情况下,在编辑过滤器的数据后不会调用此方法。 例如,如果我键入“word”,它会在ListGrid.中显示一些数据 然后我将光标移动到第一个位置,键入“one”这样我就有了过滤字符串“one word”。在这种情况下,不执行抓取,不再显示更多“旧”数据。 也许我需要禁用一些结果集/条件的缓存

以下是我的ListGrid声明:

ListGrid grid = new ListGrid();
grid.setCanEdit(false);
grid.setShowFilterEditor(true);
grid.setDataSource(getSource());
grid.setDataPageSize(DATA_PAGE_SIZE);
grid.setFields(gridFields);

共 (1) 个答案

  1. # 1 楼答案

    你不觉得重新审视一个更为严格的标准是不合逻辑的吗? 我会解释:

    SmartGWT使用数据缓存优化客户端-服务器连接并减少网络流量。 在您的示例中,假设您的数据库中有以下内容:

    • 一句话
    • 两个字
    • 一句话

    键入word时,获取返回:

    • 一句话
    • 两个字

    这些值缓存在客户端中

    当您将one添加到word时,因为这是一个更严格的搜索条件,不需要服务器获取,只需要客户端筛选,结果是:

    • 一句话