【问题标题】:Smartgwt Listgrid Filter IssuesSmartgwt Listgrid 过滤器问题
【发布时间】:2012-01-12 08:44:22
【问题描述】:

我遇到了 ListGrid 过滤器问题。我面临的问题是,当我在 ListGrid 上应用任何过滤器来编辑任何 ListGridRecord 时,只要我从 listgrid 的过滤器中删除过滤后的文本,编辑的记录就会被删除。

当我在手动删除过滤器后尝试从 listgrid 中获取记录时,以及使用 listgrid.clearCriteria() 自动删除。然后,我的所有更改都将被删除。 希望我能说得通。这是我面临一段时间的见鬼。如果您需要了解更多详细信息,请告诉我。提前致谢

【问题讨论】:

    标签: smartgwt


    【解决方案1】:

    我找到了解决这个问题的方法。实际上,当我从 listgrid 中删除过滤后的文本时,listgrid 默认会尝试从服务器获取数据。通过设置属性 setDataFetchMode(FetchMode.LOCAL) 防止列表网格在您删除过滤后的文本时从服务器获取数据。感谢所有为我提供帮助的人。

    【讨论】:

      【解决方案2】:

      关于记录消失,请参阅 SmartGWT 常见问题解答中的这个问题:

      http://forums.smartclient.com/showthread.php?t=8159#aGrid

      在 clearCriteria() 和更改消失时,不清楚您是如何进行这些更改的,但如果更改应用不正确并且 clearCriteria() 只是从服务器加载新记录,这些更改可能会消失。请参阅网格编辑概述以了解记录及其编辑(“编辑值”)的存储方式:

      http://www.smartclient.com/smartgwtee/javadoc/com/smartgwt/client/docs/Editing.html

      【讨论】:

      • 嗨@Charles ...我想提一下的是,当我第一次应用过滤器时,只有所有的变化都会消失。否则,第二次和连续多次应用过滤器。变化并没有消失。请告诉我会出现什么问题或给我一些提示。谢谢
      【解决方案3】:

      smartgwt 6,我看到了更好的方法,你可以参考展示

      如果您使用 smartgwt 3 或 4,您可以尝试以下操作 Grid.java:

          this.addFilterEditorSubmitHandler(new FilterEditorSubmitHandler(){
      
              @Override
              public void onFilterEditorSubmit(FilterEditorSubmitEvent event) {
                   filterByEditor(event.getCriteria());
      
                   //cancel the event to avoid the server side fetch  
                   event.cancel();
              }
      
          });
      

      数据源.java

      获取数据后,调用设置初始记录集。 zzzzzDataSrc.setCacheData(gridRecs);


      public void filterByEditor(Criteria cr) {

          AdvancedCriteria criteria =     
                  new AdvancedCriteria(FLD_NM, OperatorId.STARTS_WITH, cr.getAttributeAsString(FLD_NM)) ; 
          //initialize with the complete set of rows 
          this.setData(this.getDataSource().getCacheData());
          //filter using the criteria
          this.setData(this.getDataAsRecordList().findAll(criteria)); 
      
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-11-07
        相关资源
        最近更新 更多