【问题标题】:ExtJS 2.x Grid Cell Validation for Duplicate DataExtJS 2.x 重复数据的网格单元验证
【发布时间】:2013-01-07 12:12:06
【问题描述】:

我有 ExtJS 网格,其中有名为“手机号码”的列。 我在这里做了简单的事情当我编辑超过2行并且如果我修改“手机号码”列它将检查它是否存在于网格中。

如果发现重复号码,我会提示输入的手机号码已经存在,并且 重新加载整个网格,这样所有编辑的数据都将消失。

但是,我希望不重复的数据被编辑回来。

那么,我怎样才能在重新加载整个网格后保持我的非重复数据不变。

我只想删除发现重复的重复行,其他已编辑的行保持原样。

我可以使用这个 RowEditor 插件来兼容 ExtJS 2.x。

http://dev.sencha.com/deploy/ext-3.4.0/examples/grid/row-editor.html

我的邮箱:ashwin.parmar2020@gmail.com

【问题讨论】:

    标签: extjs extjs2


    【解决方案1】:

    要查找重复数据,请在该事件上使用Ext.grid.EditorGridPanelafteredit 事件,您将获得当前记录,因此只需显示消息并在该字段中添加空值

    【讨论】:

      【解决方案2】:

      您应该为检测重复号码并拒绝重复号码的手机号码字段使用validator。所以你不必重新加载网格。

      如果您仍然想重新加载网格,您可以先获取dirty 行,然后再存储/重新应用它们。

      要获取脏记录,您可以使用网格存储的getModifiedRecords() 函数。使用商店的commitChangesfunction 在验证/处理后应用它们。

      【讨论】:

      • 您能否举例说明如何获取脏行并在重新加载网格后重新应用,以便重新加载后非重复行保持在网格中,直到我提交网格数据。
      • 我编辑了我的答案。我建议您在重新加载之前存储脏记录或找到不需要重新加载的方法。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-18
      • 2017-09-23
      • 1970-01-01
      • 2012-03-11
      相关资源
      最近更新 更多