Versão atual:

retornando classe via ajax

Olá a Todos,

Eu tenho um combobox onde eu seleciono um valor qualquer, dai ele roda uma função javascript onde ele passa o código que selecionei no combo e deve me retornar a classe item pesquisada pelo banco.

Até a pesquisa está certinha, ele realiza, porém não consigo receber uma classe.

Abaixo é o código do meu combobox, onde o valor que é selecionado ele aciona a função alimentarCampos();

<select data-plugin-selectTwo class="form-control populate" name="item.id" id="codigo_barras"  onchange="alimentarCampos();">
     <option selected value=""></option>                                        
        <optgroup label="Código de Barras">
            <c:forEach var="item" items="${items}">
                <option value="${item.id}">${item.codigo_barras}</option>
            </c:forEach>
        </optgroup>
</select>

Abaixo é o javascript da função alimentarCampos que o combo acima chama, ele é responsável por pegar o id do valor selecionado, e passar este valor para uma função no meu controller chamado obtemDadosItems, esta função tem como responsabilidade fazer um select na tabela item, e devolver um objeto Item, até aqui ele funciona direitinho, o problema está quando eu quero receber esta classe, assim posso inserir valores em outros campos.

        <script type="text/javascript">
            function alimentarCampos() {
                var minhaLista = document.getElementById("codigo_barras");                                
                document.getElementById("descricao").value = minhaLista.options[minhaLista.selectedIndex].value;

                $.post("obtemDadosItems", {'id' : minhaLista.options[minhaLista.selectedIndex].value}, function(resposta) {        
                    var myObject = resposta; <-- Como manipulo ?
                    document.getElementById("numero_fabricante").value = myObject.numero_fornecedor;
                });                
            }            
        </script>

Abaixo segue a função chamada do javascript, que se encontra no controller, esta função tem como objetivo buscar um item da tabela e retornar sua classe

    @RequestMapping("obtemDadosItems")
    public String obtemDadosItems(Long id, Model model){        
        model.addAttribute("items", itemdao.lista());
        model.addAttribute("item_selecionado", itemdao.buscaPorId(id));    
        return "Estoque_Entrada/cadastro_entrada";
    }

O problema é que o campo numero do fabricante está aparecendo o valor = undefined

Versões(2):

Ver a versão formatada

retornando classe via ajax

Comentário

new question