2011-02-05 41 views
1

我怎麼可以編寫包含多個列,如這樣的dijit的自動完成組合框...道場 - 在組合框中的dijit多列

  1. 約翰,能源部,鱈魚13,街道樣品1
  2. 史蒂夫,史密斯,鱈魚14,街道樣品2
  3. 邁克爾,詹姆斯,鱈魚14,街道樣品3

這是我的代碼:

var filteringSelect = new dijit.form.ComboBox({ 
    id: "managerSelect", 
    name: "managers", 
    value: "", 
    store: managerStore, 
    searchAttr: "serial" 
    }, 
"managerSelect"); 
} 

但是那隻能說明這樣的一列:

  1. 約翰
  2. 史蒂夫
  3. 邁克爾

回答

3

如果我理解正確的話,你需要重寫 「labelFunc」 爲組合框。例如。

//定義組合框

var filteringSelect = new dijit.form.ComboBox({ 
        id: "managerSelect", 
        name: "managers", 
        value: "", 
        store: managerStore, 
        searchAttr: "serial", 
        labelFunc:"myLabelFunc" 
        }, 
        "managerSelect"); 
       } 

//定義labelFunc

function myLabelFunc(item, store){ 
      var label=store.getValue(item, 'first')+","+store.getValue(item, 'last'); 
      return label; 
     } 

HTML page - Example