2012-06-22 78 views
1

我有一個treestore中所有節點的初始配置檢查:假的,這樣一個複選框會出現,允許用戶檢查在TreePanel中的項目。然後我從樹存儲中獲取檢查的項目,並將它們移動到另一個樹面板中的另一個樹存儲。我的問題是,如何在移動節點時確保它在移動到的樹中沒有被選中?如何取消選中treepanel下treesote內的節點? ExtJS的4.07

這裏是我做了什麼:

我已經讀懂了我的移動(增加一個店,從其他拆除)節點的引用,我已經將它的config檢查:假的。當我在螢火蟲中查看節點後,它在新的樹庫中,當然,檢查:false,這是我想要的,然而,在面板內,在視覺上,它仍然被檢查。那麼我如何使它不被檢查?

+0

請發表您的代碼。目前尚不清楚你到底在做什麼。 –

+0

由於各種原因我無法發佈代碼。問題歸結爲最後一句話。如果將選中的選項更改爲false,則在代碼中,以螢火蟲或其他方式進行更改。該節點保持被檢查。如何更新treepanel以顯示更改? – Bbb

+0

請儘量給我們一個簡單的例子,我能想到的各種爲什麼發生這種情況的原因,但我不能告訴你,這沒有一例中的一 – Reimius

回答

0

有幾個原因,這可能會發生。

  1. 新列不匹配的舊列的dataIndex(在使用的TreeGrid的情況下)

  2. 你分配給兩個賣場模式的dataIndex是不一樣的Ext.data。模型在這兩種情況下。

  3. 我注意到一些怪事與樹節點,如果你不明確的是配置選項添加到您的Ext.data.Model屬性不能正常工作。因此,嘗試使用「checked」作爲dataType中的一個字段將相同模型分配給兩個樹:「布爾」

+0

的treestores的arent在這種情況下,在所有參考的典範。 – Bbb

+0

我會嘗試使用它們,然後 – Reimius

+0

你可以詳細說明3號? – Bbb

0

上週我有同樣的問題。 我做了這樣的操作,上週來解決這個問題:

currentNode.data.checked = false; 
    currentNode.raw.checked = false ; 
    currentNode.triggerUIUpdate(); 

看來它沒有沒有triggerUIUpdate工作。我與extjs4.2.1工作

相關問題