none
autocomplete com dados dinâmicos RRS feed

  • Pergunta

  • VS2010, aspnet, c#, jquery

    Alguém sabe um tutorial ou apostila ou passo-a-passo... mostrando como fazer um autocomplete jquery, json (www.jqueryui.com), pegando dados de um banco sqlserver, já vi muitos com dados estáticos, mas acessando de base de dados sqlserver ainda não


    Álvaro Luiz

    quinta-feira, 27 de dezembro de 2012 23:30

Respostas

Todas as Respostas

  • olha, em asp.net web forms você pode usar o AutoCompleteExtender, que vai ser mais fácil, já que aparentemente você está começando ainda.

    Como usar:

    Na sua aspx coloque um código como esse:

      <asp:TextBox ID="txtPrefixo" runat="server" Width="200px"></asp:TextBox>
                        <asp:AutoCompleteExtender ID="acePrefixo" runat="server" OnClientItemSelected="selecionaPrefixo"
                            ServiceMethod="GetByPrefixo" TargetControlID="txtPrefixo" />

    E no seu codebihind coloque algo como:

    [ScriptMethod]
            public static string[] GetByPrefixo(string prefixText, int count)
            {
                string[] resultados;
                SqlConnection Conexao = Cl_VariasConexoes.CriarConexao(HttpContext.Current.Session["nr_conexao"].ToString());
                try
                {
                    SqlCommand cmd = new SqlCommand("Sp_CD_Cooperado", Conexao);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@exec", "SEL");
                    cmd.Parameters.AddWithValue("@Procedimento", 2);
                    cmd.Parameters.AddWithValue("@Empresa", 1);
                    cmd.Parameters.AddWithValue("@Usuario_Log", HttpContext.Current.Session["cd_login"].ToString());
                    cmd.Parameters.AddWithValue("@Cd_Operador_Login", HttpContext.Current.Session["cd_login"].ToString());
                    cmd.Parameters.AddWithValue("@Prefixo", prefixText);
                    cmd.Parameters.AddWithValue("@Parametro", "P");
    
                    DataSet ds = new DataSet();
                    SqlDataAdapter da = new SqlDataAdapter(cmd);
                    da.Fill(ds);
                    resultados = new string[ds.Tables[0].Rows.Count];
                    int r = 0;
                    foreach (DataRow row in ds.Tables[0].Rows)
                    {
                        resultados[r] = row["cd_prefixo"].ToString() + " - " + row["Ds_nome"].ToString() + " -" + row["cd_matricula"].ToString();
                        r++;
                    }
                }
                catch (SqlException erro)
                {
    
                    throw (erro);
                }
                finally
                {
                    Conexao.Close();
                }
    
                return resultados;
    
            }

    Desculpe, mas coloquei antigo meu (na época que não usava OOP direito e nem MVC).

    Como vê há uma conexão com o sql server e busca os dados para retornar ao autocompleteextender


    Twitter: @MayogaX
    Blog: Dev Blog

    • Sugerido como Resposta Vitor Mendes sexta-feira, 28 de dezembro de 2012 12:37
    sexta-feira, 28 de dezembro de 2012 11:03
  • Muito obrigado pela resposta Priscila, mas preciso que seja em jQuery

    Álvaro Luiz

    sábado, 29 de dezembro de 2012 01:34
  • Segue link :):

    Link


    http://www.linkedin.com/pub/murilo-kunze/44/191/455

    • Marcado como Resposta Álvaro Luiz quinta-feira, 3 de janeiro de 2013 13:56
    sábado, 29 de dezembro de 2012 01:47