none
Partial View Usando AngularJS RRS feed

  • Discussão Geral

  • Olá Pessoal,

    Eu tenho um grid que tem um link em cada linha, no click do grid eu consigo pegar o ID do item, mas eu queria mostrar um em uma partial view em baixo do grid com os detalhes do item, ou seja, quando eu clico na linha eu estou chamando uma function no meu controllerJS, assim eu preciso passar o ID do item e carregar os detalhes na partial view em baixo do grid, esse ID tem que ser passado de qualquer modo para uma Action que vai no banco de dados carregar os detalhes e retornar na minha partial view, como faço para mostrar esses dados?

    OBS.: Estou usando AngularJS com C# MVC.

    Os dados carregados em baixo do grid:

    Name : SMITH, Anna                    DOB : 01/03/1968                        Room No.: 14.3.T

    Doctor: Dr. Kevin Smith                                Prescriber No: 123456

    Muito Obrigado


    Ricardo Andrade - MCTS ADO.NET 3.5


    • Tipo Alterado Marcos SJ quarta-feira, 6 de janeiro de 2016 13:09 Todas as threads de "How to" serão modificadas para discussão geral
    • Editado Ricardo Andrade - developer quarta-feira, 6 de janeiro de 2016 13:20
    quarta-feira, 6 de janeiro de 2016 13:05

Todas as Respostas

  • Um solução seria ocultar sua div com os dados e mostrá-la somente quando estiver com seus dados populados.

    //SEU GRID
    <div ng-show="mostrarDiv"> SEUS ITENS</div>

    Após clicar no item, em sua função deverá fazer conforme abaixo:

    $scope.mostrarDiv = true

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quarta-feira, 6 de janeiro de 2016 19:21
  • Na verdade o meu problema não seria na hora de ocultar ou mostrar a div e sim ao chamar uma partial view, pois eu preciso criar uma partial view e chamar no clique da linha do meu grid, pois como disse tenho o ID do item e tudo, mas não sei como criar essa partial view e chamar a mesma passando o ID do Item (que seria para recuperar os dados no banco e preencher na partial).

    Preciso que seja uma partial, pois tem outras 5 telas que usam esses mesmos dados, o mesmo pedaço da tela.

    Grato


    Ricardo Andrade - MCTS ADO.NET 3.5

    quarta-feira, 6 de janeiro de 2016 21:17
  • Entendi, isso é facil, voce pode renderizar a partir do $compile do Angular, da seguinte forma. Em seu html voce terá a diretiva ng-bind para fazer o bind do seu html.

     <p ng-bind-html="myHTML"></p>


    e no seu controller voce terá o 

     $scope.myHTML =
           'I am an <code>HTML</code>string with ' +
           '<a href="#">links!</a> and other <em>stuff</em>';

    Existe esse exemplo da propria documentação:

    http://plnkr.co/edit/?p=preview

    Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quinta-feira, 7 de janeiro de 2016 11:38
  • Olá Ricardo, esse seu problema com a partial view foi solucionado. Estou com o mesmo problema.!!!
    terça-feira, 21 de junho de 2016 20:10
  • Ricardo,

    Acredito que não existe a necessidade de chamar a partial view, como você está utilizando o AngularJS, acredito que seja melhor popular pelo Angular.

    Altere o seu método para retornar um JSON ao invés da view, adicione a partial view na mesma página do grid e deixe o html oculto, somente quando o usuário clicar no link do grid, você popula este trecho e exibe com os dados do registro selecionado, caso contrário o html da partial view deve ficar oculto.



    <p>Att, <br/> Leandro</p> <p style="color:#999999"><em>Se foi útil, marque como útil ou como resposta.</em></p>


    terça-feira, 21 de junho de 2016 20:52