Usar javascript e asp para atualizar o listbox da janela parent usando window.opener
Vamos criar a seguinte situação para exemplificar a utilização de javascript em uma janela aberta com a utilização do comando javascript window.open, para atualizar valores em um listbox da janela principal.
Crie o arquivo produtos_adicionar.asp e insira um formulário com um campo do tipo listbox que será usado para você selecionar uma categoria a ser atribuída ao produto que está cadastrando.
Atribua o ID idcategoria para o listbox e insira código asp para gerar as opções do listbox relativas aos registros de categorias já existentes em seu banco de dados. O código asp para construir um listbox é muito simples mas vou colocar um exemplo:
Só tenho uma coisa a esclarecer no código acima: Utilizo a função AbreConexao() para criar a connectionstring e abrir o banco de dados.
Na janela que será aberta contendo as categorias será inserido o código para atualizar o listbox da janela parent utilizando window.opener do javascript. Segue abaixo o código:
Insira a chamada da função em uma tag para fechar a janela, por exemplo:
Fechar
Alguns comentários sobre o código:
A primeira coisa a ser feita é instanciar o listbox da janela parent usando:
var lstbox = eval("window.opener.document.forms[0].idcategoria");
Em seguida faça uma chamada a função clearlistbox passando o listbox como parâmetro para limpar as opções existentes antes de preencher o listbox com os valores atualizados.
clearlistbox(lstbox);
Para gerar os itens atualizados dentro da função populateList() foi utilizado um script ASP. O script faz uma consulta a tabela categorias de forma semelhante ao que foi feito na página parent citado anteriormente. Veja o trecho de código abaixo:
O script ASP acima vai gerar o código javascript necessário para criar e atribuir uma option para cada registro da tabela categorias no listbox instanciado pela variável lstbox.
Nenhum comentário:
Postar um comentário