Dojo - отобразить несколько столбцов в поле со списком

Как я могу написать поле со списком автозаполнения dijit, содержащее несколько столбцов, например это...

  1. Джон, Доу, Треска 13, уличная проба 1
  2. стив, кузнец, треска 14, уличная проба 2
  3. Майкл, Джеймс, Треска 14, Street Sample 3

Это мой код:

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

Однако он показывает только один столбец, подобный этому:

  1. Джон
  2. Стив
  3. Майкл

person carlo    schedule 05.02.2011    source источник


Ответы (1)


Если я правильно понимаю, вам нужно переопределить "labelFunc" для поля со списком. Например.

// определяем поле со списком

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

// определить функцию метки

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

HTML-страница — пример

person Andrei    schedule 26.03.2011