none
Retornar valor de pesquisa em um table RRS feed

  • Pergunta

  • Bom dia,

    tenho a seguinte table:

    <table id="tableAgenda" class="tableAgenda">
            <thead>
    		<tr>
    			<td>Nome</td>
    			<td>Telefone</td>
    			<td>Celular</td>
    			<td>Email</td>
    			<td>Cidade</td>			
    		<tr>
            </thead>
        
        <tbody> 
             @For Each i In Model
                @<tr style="border:solid 1px gray;">
                        <td>@Html.Label(i.nome)</td>
                        <td>@Html.Label(i.telefone)</td>
                        <td>@Html.Label(i.celular)</td>
                        <td>@Html.Label(i.email)</td>
                        <td>@Html.Label(i.cidade)</td>
                </tr>
                       Next
              </tbody>
        </table>

    Gostaria que, no click de um botão fosse realizada uma pesquisa no banco referente a um valor inserido em um text e essa pesquisa me retornara um resultado que será carregado no table.

    Eu consigo fazer a pesquisa ser realizada, mas, não consigo carrega-la no table. Abaixo está o código que estou usando para realizar a pesquisa:

     <script>
          $(document).ready(function () {
              $("#btnbuscar").click(function () {
                  if ($("#buscar").val().toString().length > 0) {
                      var nome = $("#buscar").val();
    
                          $.ajax({
                              url: '@Url.Action("Buscar", "AgendaTelefonica")',
                                 data: { nome: nome },
                                 success: function (result) {
                                     $("#tableAgenda").val(result); //aqui eu tento carregar o retorno, mas, não funciona
                                 }
                             });
                         }
                         else {
                             alert("Informe algo para buscar.");
                             $("#buscar").focus();
                         }
              });
         });    
          </script>

    Abaixo o código no controller que é executado no click do botão:

      Function Buscar(nome As String) As ActionResult
            Try
                Dim a As New AgendaTelefonicaModel
                Return View(a.Buscar("nome", nome)) 'a.buscar retorna uma lista do tipo AgendaTelefonicaModel
            Catch ex As Exception
                ModelState.AddModelError("", ex.Message)
            End Try
        End Function

    Alguma ideia de como fazer?

    Daniela



    • Editado dani.ela quinta-feira, 6 de fevereiro de 2014 12:08
    quinta-feira, 6 de fevereiro de 2014 12:06

Respostas

  • Olá,

    Esse text não era pra ser um textbox ?

    Você precisa verificar se há algo digitado no textbox, e logo em seguida, executar um consulta para pegar seus dados.

    Em C#:

    if (!String.IsNullOrEmpty(nome))
    {
    nomes = nomes.Where(s =>s.Nome.Contains(nome));
    }
    
    return View("SuaView", nomes);

    E não se esqueça de adicionar a textbox na sua View:

    @using(Html.BeginForm("Busca","AgendaTelefonica",FormMethod.Get))
    {
    
    <p>Nomes: @Html.TextBox("nome")  
    <input type="submit" value="Procurar" id ="btnbuscar"/></p>
    
    }

    Att,



    • Editado _Omnislash_ quinta-feira, 6 de fevereiro de 2014 12:52 ...
    • Marcado como Resposta dani.ela quinta-feira, 6 de fevereiro de 2014 13:15
    quinta-feira, 6 de fevereiro de 2014 12:49

Todas as Respostas

  • Olá,

    Esse text não era pra ser um textbox ?

    Você precisa verificar se há algo digitado no textbox, e logo em seguida, executar um consulta para pegar seus dados.

    Em C#:

    if (!String.IsNullOrEmpty(nome))
    {
    nomes = nomes.Where(s =>s.Nome.Contains(nome));
    }
    
    return View("SuaView", nomes);

    E não se esqueça de adicionar a textbox na sua View:

    @using(Html.BeginForm("Busca","AgendaTelefonica",FormMethod.Get))
    {
    
    <p>Nomes: @Html.TextBox("nome")  
    <input type="submit" value="Procurar" id ="btnbuscar"/></p>
    
    }

    Att,



    • Editado _Omnislash_ quinta-feira, 6 de fevereiro de 2014 12:52 ...
    • Marcado como Resposta dani.ela quinta-feira, 6 de fevereiro de 2014 13:15
    quinta-feira, 6 de fevereiro de 2014 12:49
  • Perfeito Omnislash!

    Minha view já tinha o text e o btn, eu estava tentando fazer com ajax como mostrei no meu código e não estava funcionando, mas, o seu exemplo funcionou certinho. Obrigada!

    Daniela

    quinta-feira, 6 de fevereiro de 2014 13:15