Pertanyaan Bagaimana cara memilih nilai komboboks di ExtJs?


Saya hanya mencoba memilih item di daftar tarik-turun setelah dimuat ke dalam toko. Ini tidak bekerja:

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

Ini melempar pengecualian:

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

Di sini adalah pengecualian: 'this.view' adalah null atau bukan objek

Ada yang tahu cara melakukan ini di ExtJs?


4
2018-06-12 15:42


asal


Jawaban:


Saya membuat fungsi untuk menetapkan nilai kotak kombo di 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;
}

9
2017-07-13 19:50



Ext.getCmp('ddlModel').select(aircraftStore.getAt(0));


2
2018-06-12 16:09



Dalam banyak kasus Anda mungkin ingin mengatur combobox ke indeks tertentu. Di ExtJs 4.2 Anda dapat melakukannya seperti ini:

function setIndex(combobox, value)
{
    combobox.setValue(combobox.store.data.items[value].data.field1);
}

0
2018-02-04 19:52



dalam kasus saya, saya perlu mendapatkan id dari kotak kombo, lalu membandingkan dengan jika, dan dengan demikian dapat melewati jendela kedua, gunakan metode ini dan itu berhasil.

var ValorSeleccionado = Ext.getCmp('cmb_tipoderol_usr').getValue(); // 'cmb_tipoderol_usr' is the id of the combobox.

lalu bandingkan dengan tindakan

if (ValorSeleccionado == 1 ) { Do Action }

0
2018-02-18 22:14