2013-11-23 34 views
2

請看看這個代碼空是FilteringSelect價值的選擇:道場:當需要=假

dojo.require('dijit.form.FilteringSelect'); 
dojo.require('dojo.store.JsonRest'); 

dojo.declare('JsonFilteringSelect', dijit.form.FilteringSelect, { 
    constructor: function (options) { 
     dojo.declare.safeMixin(this, options); 
     if (this.url) { 
      this.store = new dojo.store.JsonRest({ 
       target: this.url 
      }); 
     } else { 
      console.log('JsonFilteringSelect: options.url is not defined'); 
     } 
    } 
}); 

var getPersonJsonFilteringSelect = new JsonFilteringSelect({ 
      url: '/person/get', 
      name: 'Test', 
      title: 'Test title', 
      required: false, 
      autoComplete:false, 
      value: '', 
      pageSize:10, 
      queryExpr:'${0}' 
     }, dojo.byId('select')); 

getPersonJsonFilteringSelect.startup(); 
}); 

使用案例:假設我有20個結果到我FilteringSelect來。

  1. 用戶選擇是FilteringSelect值1。
  2. 該值設置爲值 FilteringSelect。
  3. 但用戶後決定對 空值更改此值。
  4. 據我瞭解,因爲需要:假FilteringSelect來應該允許 設置爲空值,但事實並非如此。我在這裏觀察此行爲:
    1. 用戶點擊文本框是FilteringSelect當用戶按下「標籤」或其他元素點擊
    2. 用戶將其清除
    3. - FilteringSelect來自動選擇第一個值

我怎麼能允許用戶設置空值到FilteringSelect來?

回答

2

它的加載後,您應該添加一個空項(「」或空可能?我知道「」工程),以您的數據存儲(我把它放在開頭),但小部件啓動前。

「必需」的問題很奇怪與FilteringSelect來,因爲它不會讓你選擇任意值 - 它必須是從數據存儲中的條目。然而,如果沒有要求,它不應該在意嗎?......道場有時候很奇怪。

+0

 作爲標籤,「」作爲值 –