extjsextjs3

How to select a combobox value in ExtJs?


I am trying to simply select an item in the dropdown list after it has been loaded into a store. This does not work:

Ext.getCmp('ddlModel').setValue(aircraftStore.getAt(0).data.ModelTypeCode);

This throws an exception:

Ext.getCmp('ddlModel').selectByValue(aircraftStore.getAt(0).data.ModelTypeCode);

Here is the exception: 'this.view' is null or not an object

Anyone know how to do this in ExtJs?


Solution

  • I created a function to set the value of the combo box in ExtJs:

    function ComboSetter(comboBox, value) {
        var store = comboBox.store;
        var valueField = comboBox.valueField;
        var displayField = comboBox.displayField;
    
        var recordNumber = store.findExact(valueField, value, 0);
    
        if (recordNumber == -1)
            return -1;
    
        var displayValue = store.getAt(recordNumber).data[displayField];
        comboBox.setValue(value);
        comboBox.setRawValue(displayValue);
        comboBox.selectedIndex = recordNumber;
        return recordNumber;
    }