2011-03-31 55 views
0

嗨 我有一個可編輯的網格。某些功能修改網格中的記錄。當字段值更改時,會觸發onupdate事件。 上更新執行功能得到修改記錄,並檢查該字段進行了修改:extjs可編輯網格 - 清除修改記錄列表

if (record.isModified('field1')) {...} 
else if (record.isModified('field2')) {...} 

的問題是,從電網的最近加載修改的「isModified()」檢查所有字段。有沒有辦法清除列表或僅獲取最後修改的字段?

回答

0

你看過RecordgetChanges()方法嗎?它(從ExtJS API documentation引號)返回如下:

只獲取,因爲這條 創建或COMMITED 已被修改字段的哈希值。

另一選項將是modified屬性,它返回下列:

該對象包含一個鍵和值 存儲所有 修改的字段的原始值或爲空,如果沒有 字段具有已被修改。

+0

這就是問題所有這些都從商店的加載或創建記錄返回修改的記錄/字段。在我的情況下,網格沒有連接到數據庫,所以我需要知道最後一個字段被修改了什麼 – lvil 2011-03-31 16:52:47

+1

好的。那麼在每次更改之後調用'Record.commit()'怎麼辦?調用提交重置記錄的修改後的屬性。這樣,在每次更新時,上述方法只會返回上次修改。 – Tommi 2011-03-31 17:17:36

+0

還要注意,調用'commit()'會導致另一個'update'事件觸發,但具有不同的'operation'值('COMMIT'而不是'EDIT')。檢查'操作',如果是'COMMIT',則不執行任何操作。 – Tommi 2011-03-31 17:19:48