Adicionar e Remover Elementos Combobox EXT

8 04 2008

Introdução

Que o EXT fornece excelentes componente isso já está provado, infelizmente algumas coisas não são muito fáceis de descobrir, neste texto pretendo mostrar os códigos de como adicionar e remover elementos de um combobox em tempo de execução, ou seja, com o usuário utilizando a aplicação.

Criando o Combo

    var store_combo_serv_cod = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
url: 'suaurl',
method: 'POST'
}),
autoLoad : false,
reader: new Ext.data.JsonReader({
root: 'data',
id: 'k',
totalProperty : 'total'
},objeto_recordo_combo
});     var combo_serv_cod = new Ext.form.ComboBox({
typeAhead: true,
triggerAction: 'all',
transform:'serv_cod',
forceSelection: true,
width : 500,
minListWidth : 500,
blankText : 'Nenhum Registro',
editable : true,
mode : 'remote'
,displayField:'v'
,valueField: 'k'
,store : store_combo_serv_co
});combo_serv_cod.on('click',function(){
store_combo_serv_cod.load()
});

O código acima cria um combo com os dados que vem do servidor no formato de um vetor json.

Remover o Elemento Selecionado

combo_serv_cod.store.remove(combo_serv_cod.store.getAt(combo_serv_cod.selectedIndex));

Adicionar um Novo Registro

var v = new Array();
v.k = id;
v.v = nome;
var novo = new objeto_recordo_combo(v)
store_combo_serv_cod.add(novo);

Cria um novo registro do mesmo tipo usado no store do combo e adiciona o novo registro

Dica

Se quiser usar aquela idéia do suggest do google nos combobox do EXT siga esse tutorial:

http://extjs.com/forum/showthread.php?t=15159&highlight=combobox+autocomplete

Referência

http://extjs.com/forum/showthread.php?t=6297&highlight=remove+combobox

http://extjs.com/forum/showthread.php?t=8806&highlight=array+record


Ações

Information

Deixe um comentário