angularjs setting select to be able to change

0

I have a grid with the select button where this button will load the grid data into a form so that it can be changed. It turns out that I am not able to set the select field with the data of the object that mounts the grid itself.

Here are snippets of the code:

<form name="mainForm" ng-submit="saveProduto();">
        <label for="Nome">Descricao</label>
        <input type="text" class="form-control" id="Descricao" placeholder="Enter Descricao" required data-ng-model="controller.produto.Descricao" />

        <label for="Login">Modelo</label>
        <input type="text" class="form-control" id="Modelo" placeholder="Enter Modelo" required data-ng-model="controller.produto.Modelo" />

        <label for="text">Fabricante</label>
        <input type="text" class="form-control" id="Fabricante" placeholder="Enter Fabricante" required data-ng-model="controller.produto.Fabricante" />

        <label for="text">Categoria</label>
        <select ng-model="controller.produto.Categoria" ng-options="obj.Descricao for obj in categorias" required>
            <option value="">Selecione uma Opção</option>
        </select>


        Currently selected: {{ controller.produto.Categoria }}
        <br />

        <div ng-show="isAlterar()">
            <button type="button" data-ng-click="salvarUsuario(controller.produto)">Salvar</button>
            <button type="button" data-ng-click="CancelarSelecao()">Cancelar</button>
        </div>
    </form>

    <hr />

    <h2> Produtos existentes </h2> <br />
    <table style="width:100%" class="table table-hover">
        <thead>
            <tr>
                <th><h3>Descricao</h3></th>
                <th><h3>Modelo</h3></th>
                <th><h3>Fabricante</h3></th>
                <th><h3>Categoria</h3></th>
                <th><h3>Ações</h3></th>
            </tr>
        </thead>
        <tbody>
            <tr ng-repeat="produto in produtos">
                <td ng-blur="updProduto(produto,'Descricao',$event)" ng-dblclick="makeEditable($event)">{{produto.Descricao}}</td>
                <td ng-blur="updProduto(produto,'Modelo',$event)" ng-dblclick="makeEditable($event)">{{produto.Modelo}}</td>
                <td ng-blur="updProduto(produto,'Fabricante',$event)" ng-dblclick="makeEditable($event)">{{produto.Fabricante}}</td>
                <td ng-blur="updProduto(produto,'Categoria',$event)" ng-dblclick="makeEditable($event)">{{produto.Categoria.Descricao}}</td>
                <td> <button type="button" class="btn btn-danger" data-ng-click="dltProduto(produto.Id)">Excluir</button> </td>

                <td> <button type="button" class="btn" data-ng-click="selecionarProduto(produto)">Selecionar</button> </td>

            </tr>
        </tbody>

    </table>



$scope.selecionarProduto = function (obj) {
        var prod = {
            Id: obj.Id,
            Descricao: obj.Descricao,
            Modelo: obj.Modelo,
            Fabricante: obj.Fabricante,
            Categoria: obj.Categoria
        };

        controller.produto = prod;


        alterar = true;
    };

Follow the data for the Product and Category objects:

public class ProdutoViwer: BasicViwer<int>
    {
        public virtual string Descricao { get; set; }
        public virtual string Modelo { get; set; }
        public virtual string Fabricante { get; set; }
        public virtual CategoriaViwer Categoria { get; set; }
        public virtual IList<PedidoViwer> Pedidos { get; protected set; }

        public ProdutoViwer()
        {
            if (Pedidos == null)
            {
                Pedidos = new List<PedidoViwer>();
            }
        }
}

public class CategoriaViwer: BasicViwer<int>
    {
        public virtual string Descricao { get; set; }
        public virtual IList<ProdutoViwer> Produtos { get; set; }
}

Can anyone explain why the value is not set in select?

    
asked by anonymous 30.01.2018 / 14:04

0 answers