Ho cercato di creare un semplice ComboBox:Che cosa fa triggerAction ExtJS ComboBox: "all" fa davvero?
var combo1 = new Ext.form.ComboBox({
store: [1,2,3],
renderTo: document.body
});
ma scritto in questo modo agisce strano:
- Alla prima comparsa volta apre il menu a discesa, offre tre scelte.
- Si sceglie uno.
- Ma quando provate a modificare la selezione, il menu a discesa offre solo una scelta, quella selezionata in precedenza.
ho paragonato il mio codice al samples su Ext homepage e ha scoperto che l'aggiunta di triggerAction: "all"
risolve il mio problema:
var combo2 = new Ext.form.ComboBox({
triggerAction: "all",
store: [1,2,3],
renderTo: document.body
});
ExtJS documentazione per triggerAction
non mi dice molto:
L'azione da eseguire quando viene fatto clic sul trigger. Usa 'tutti' per eseguire la query specificata l'opzione di configurazione allQuery (default 'query')
non ho specificato l'opzione allQuery. In realtà, non voglio affatto eseguire una query sul server.
Quindi cosa fa veramente questo triggerAction
?
E lo sta impostando su "all"
davvero cosa dovrei fare quando voglio solo una semplice combo statica?
Grazie. Ora capisco. –
Questo ha senso ora, ma questa è un'opzione davvero poco nominata! – duma
Il motivo del nome è che la configurazione è ereditata da "TriggerField" e quindi viene usata in modo più generico al di fuori delle combo e non deve nemmeno riguardare il filtraggio in altre implementazioni. Ma sì, un alias specifico della combinazione che è più descrittivo potrebbe essere bello. –