2015-05-04 31 views
0

似乎dijit.form.FilteringSelect的默認值不會在加載時顯示,也不會在應用商店時顯示。Dojo FilteringSelect:異步時的默認值。 store not visible

我創建了一個小提琴來說明: http://jsfiddle.net/NiekVandael/2nmz8433/3/

var fs = new dijit.form.FilteringSelect({ 
    store: getMyStore(), 
    value: "Bar" /* Bar should be the default value */ 
}, 'fsNode'); 

文檔: http://dojotoolkit.org/reference-guide/1.10/dijit/form/FilteringSelect.html

任何toughts?

NIEK

+0

你有沒有叫過'fs.startup()'? – frank

回答

1

有你叫fs.startup()

這是工作jsfiddle與啓動調用。

EDIT1:

爲了設置你需要的屬性的值設置到店標識領域,而不是顯示值的默認值。

var fs = new dijit.form.FilteringSelect({ 
     store: getMyStore(), 
     value: 0 /* 0 is the identifier for the default 'Loading, Please wait 3 seconds...' will be show.n */ 
    }, 'fsNode'); 

這裏是更新的jsfiddle

請記住,在啓動FilteringSelect小部件的第一次時,默認值只會顯示一次。

您希望顯示爲默認值的'Bar'值在啓動時不可用。它僅在setTimeout函數執行後纔可用。因此它不能在啓動時顯示。

EDIT2:

您可以通過使用小部件的集()功能設置的部件是FilteringSelect的價值。 檢查更新的jsfiddle

+0

弗蘭克,謝謝你的回答。我同意調用startup()函數,但是我看不到在您的小提琴中出現在Dojo FilteringSelect中的默認值? –

+0

只是嘗試它會延長約9秒(9000)在setTimeout。然後點擊過濾選擇你會看到默認值,即'Loading,請等待3秒...' – frank

+0

是的,但我想顯示一個默認值,而不點擊過濾選擇。在商店加載之前,我想要一個像「Bar」這樣的值在篩選中顯示爲「selected value」。 –