Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

festamix

Limpando Combobox

Recommended Posts

Olá. Gostaria de saber como posso fazer para limpar todos os dados de um combobox instanciado de montadora.Já aviso que montadora.label=""; montadora.data="";Não funcionam

Compartilhar este post


Link para o post
Compartilhar em outros sites

não saquei o que você quer exatamente, mas tentou false true?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kra, esse comando funciona. Só estou tendo um problema. Tenho um script que funciona mais ou menos como ajax para preencher os combobox. Tipow tenho três combox, um com os veículos (carros, motos, caminhões) outro com marca (ford...) e outro com os modelos (mustang...). O problema é que se seleciono carros, ele carrega tudo certo, mais ao selecionar motos, ele deixa as marcas dos carros e ainda colocar as de moto. E queria que limpa-se o combo antes de inserir as outras marcas. Espalhei a função dataProvider por todo script numa tentativa desesperada de fazer funcionar. Mais de nada adiantou.

var pular:Object = new Object();

var doc:XML = new XML();

doc.ignoreWhite = true;

montadora.addItem("Fabricante");

modelo.addItem("Modelo");

veiculo.addItem("Veículo");

doc.onLoad = function(sucess) {

if (sucess == true) {

xmlNode = this.firstChild;

total = xmlNode.childNodes.length;

preenche();

}else{

problema = "problema";

}

};

doc.load("xml/lista_veiculos.xml");

function preenche() {

for (var i = 0; i<total; i++) {

a=xmlNode.childNodes.childNodes[0].firstChild

b=xmlNode.childNodes.childNodes[1].firstChild

veiculo.addItem({label:a.nodeValue, data:b.nodeValue});

}

}

pular.change = function(){

montadora.dataProvider = null;

combo_montadora();

}

veiculo.addEventListener("change", pular);

 

function combo_montadora(){

montadora.dataProvider = null;

var pular2:Object = new Object();

var doc2:XML = new XML();

doc2.ignoreWhite = true;

doc2.onLoad = function(sucess2) {

if (sucess2 == true) {

xmlNode2 = this.firstChild;

total2 = xmlNode2.childNodes.length;

preenche2();

}

};

 

doc2.load(veiculo.selectedItem.data);

function preenche2() {

montadora.dataProvider = null;

for (var c = 0; c<total2; c++) {

montadora.dataProvider = null;

a2=xmlNode2.childNodes[c].childNodes[0].firstChild

b2=xmlNode2.childNodes[c].childNodes[1].firstChild

montadora.addItem({label:a2.nodeValue, data:b2.nodeValue});

}

}

pular2.change = function(){

modelo.dataProvider = null;

combo_modelo();

}

montadora.addEventListener("change", pular2);

}

 

function combo_modelo(){

modelo.dataProvider = null;

var pular3:Object = new Object();

var doc3:XML = new XML();

doc3.ignoreWhite = true;

doc3.onLoad = function(sucess3) {

if (sucess3 == true) {

xmlNode3 = this.firstChild;

total3 = xmlNode3.childNodes.length;

preenche3();

}

};

 

doc3.load(montadora.selectedItem.data);

function preenche3() {

modelo.dataProvider = null;

for (var d = 0; d<total3; d++) {

modelo.dataProvider = null;

a3=xmlNode3.childNodes[d].childNodes[0].firstChild

b3=xmlNode3.childNodes[d].childNodes[1].firstChild

modelo.addItem({label:a3.nodeValue, data:b3.nodeValue});

}

}

pular3.change = function(){

modelo.dataProvider = null;

}

modelo.addEventListener("change", pular3);

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Passei a tarde quebrando a cabeça para limpar a TileList e permitir desta forma que novos elemento sejam carregados dinâmicamente na mesma. A solução é muito simples, pelo menos no AS3 imagino que não deve ser diferente do AS2.

 

Deves utilizar o método removeAll aplicado ao nome do Combobox. Só isso

 

Claudio

Compartilhar este post


Link para o post
Compartilhar em outros sites

Kra, num combo simples, sem nem uma action a mais funcinou sem prob. Mais a outra action tb tinha funcionado assim. Vou tentar agora com meu script.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É kra, infelizmente ficou na mesma. Ele não limpa a lista de marcas no segundo combo ao mudar a seleção do primeiro combo. Ao invés de limpar todo o combo das marcas e só após isso colocar as marcas referentes ao veiculos ele pega deixa as marcas do ultimo seleciona e insere ainda os outros.

Compartilhar este post


Link para o post
Compartilhar em outros sites

com um ou dois pontos?

tipow modelo.removeAll(); já tentei. Mais ficou na mesma. Acho que meu script q tah impedindo está ação. Já tentei colocar a função de limpar lah aonde o script comessa a popular o combo. Mais de nada adiantou. Alguém pode dar uma olhadinha no script acima e ver onde é melhor colocar. Talvez eu esteja colocando no lugar errado. Pra fazer esse script já me deu um nó na kbça.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.