Browse Source

initFormData清除dirty

zhuth 7 years ago
parent
commit
e5d19785f0
1 changed files with 26 additions and 1 deletions
  1. 26 1
      frontend/saas-web/app/view/core/form/FormPanel.js

+ 26 - 1
frontend/saas-web/app/view/core/form/FormPanel.js

@@ -297,6 +297,10 @@ Ext.define('saas.view.core.form.FormPanel', {
     initFormData: function(data) {
         var me = this;
         me.setFormData(data);
+        var fields = me.getForm().getFields().items;
+        Ext.Array.each(fields, function(f) {
+            f.resetOriginalValue ? f.resetOriginalValue() : '';
+        });
     },
 
     /**
@@ -365,5 +369,26 @@ Ext.define('saas.view.core.form.FormPanel', {
                 typeof item.setDisabled == 'function' && item.setDisabled(!able);
             }
         });
-    }
+    },
+
+    //overriders
+    isDirty: function () {
+        var me = this,
+        detailGrids = me.query('detailGridField'),
+        dirty = false;
+
+        for(var i = 0; i < detailGrids.length; i++) {
+            var grid = detailGrids[i];
+            if(grid.isDirty()) {
+                dirty = true;
+                break;
+            }
+        }
+
+        if(!dirty) {
+            dirty = me.callParent();
+        }
+
+        return dirty;
+    },
 });