none
Consulta dinâmica RRS feed

  • Pergunta

  • Bom dia,

    Estou com um problema, pensei em uma solução, porém não sei se a mesma é possível de ser implementada.

    Eu tenho uma grid, que será carregada com todos os registros de uma tabela, e tenho um campo de texto.

    Conforme o usuário for digitando no campo de texto, eu quero ir filtrando os registros dessa grid.

    Vocês acham uma boa ideia.

    Se sim, tem alguma ideia de como fazer esse dinamismo em MVC?

    Obrigado desde já.

    Atenciosamente,


    Ari Thomazini. Graduado em Ciência da Computação. ITIL V3 Certified Scrum Master Certified MCPD

    quinta-feira, 13 de setembro de 2012 13:13

Respostas

  • Fiz alguns testes com jQuery e MVC e obtive sucesso.

    Uma opção no seu caso, seria utilizar algum plugin de dataTable para jQuery, buscar os dados no servidor passando como parâmetro o string que o usuário colocou no input text.

    No servidor, seria algo como:

    public ActionResult GetDataFiltered(parametro)
    {
       List<ClasseDeDados> dados;
       dados= DAO.retornarDados(parametro);
       return Json(dados, JsonRequestBehavior.AllowGet);
    }

    No javascript, seria algo como:

    function GetDataFiltered() {
        $.getJSON(_url, function (jsonResult) {
        
        // aqui o código para jogar o jsonResult no objeto table do jQuery      
    
         });
    }

    Na verdade, o método $.ajax(); seria mais indicado.

    Coloquei o $.getJSON porque foi o último teste que fiz e que funcionou, mas eu já usei o $.ajax com webservices, PageMethods e até WCF...

    Agora iniciei os testes com MVC e o resultado tem sido muito bom. Creio que com um pouco mais de estudo, você conseguirá utilizar essa abordagem no seu projeto, e o melhor de tudo é que já seguindo os moldes de AJAX. Funcionando de forma assíncrona e permitindo um melhor controle, como por exemplo no evendo change ou keyup do seu input text....

    Espero ter ajudado.

    Mauro

     


    • Marcado como Resposta Ari Thomazini quinta-feira, 13 de setembro de 2012 13:50
    quinta-feira, 13 de setembro de 2012 13:38

Todas as Respostas

  • Fiz alguns testes com jQuery e MVC e obtive sucesso.

    Uma opção no seu caso, seria utilizar algum plugin de dataTable para jQuery, buscar os dados no servidor passando como parâmetro o string que o usuário colocou no input text.

    No servidor, seria algo como:

    public ActionResult GetDataFiltered(parametro)
    {
       List<ClasseDeDados> dados;
       dados= DAO.retornarDados(parametro);
       return Json(dados, JsonRequestBehavior.AllowGet);
    }

    No javascript, seria algo como:

    function GetDataFiltered() {
        $.getJSON(_url, function (jsonResult) {
        
        // aqui o código para jogar o jsonResult no objeto table do jQuery      
    
         });
    }

    Na verdade, o método $.ajax(); seria mais indicado.

    Coloquei o $.getJSON porque foi o último teste que fiz e que funcionou, mas eu já usei o $.ajax com webservices, PageMethods e até WCF...

    Agora iniciei os testes com MVC e o resultado tem sido muito bom. Creio que com um pouco mais de estudo, você conseguirá utilizar essa abordagem no seu projeto, e o melhor de tudo é que já seguindo os moldes de AJAX. Funcionando de forma assíncrona e permitindo um melhor controle, como por exemplo no evendo change ou keyup do seu input text....

    Espero ter ajudado.

    Mauro

     


    • Marcado como Resposta Ari Thomazini quinta-feira, 13 de setembro de 2012 13:50
    quinta-feira, 13 de setembro de 2012 13:38
  • Muito obrigado.

    Era utilizando JSon que eu estava pensando mesmo.!

    Valeu :)


    Ari Thomazini. Graduado em Ciência da Computação. ITIL V3 Certified Scrum Master Certified MCPD

    quinta-feira, 13 de setembro de 2012 13:50