Partage
  • Partager sur Facebook
  • Partager sur Twitter

[ASP/AJAX]AutoCompleteExtender

Sujet résolu
    11 mars 2011 à 12:26:33

    Bonjour tout le monde,

    Voila, dans une de mes pages asp l'utilisateur peut rechercher une personne. Mon but est lorsque l'utilisateur tape une lettre dans le texbox, tout les nom commençant par cette lettre apparaissent. Pour cela, j'utilise l'autocompleteextender. J'ai suivi des tutoriels mais quelque chose ne va pas et je n'arrive pas à trouver se qui coince! Je me tourne donc vers vous si vous avez un peu de temps à me consacrer.

    Voici mon code :

    ASPX :

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="index.aspx.cs" Inherits="Projet_Annuaire_Web.Styles.index" Theme="Thème1" %>
    <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
    
    
            <asp:Label ID="lblRechMed"   runat="server" Text="Recherche Médecin : " 
                Font-Names="Arial Black" Font-Size="Large" ForeColor="#4ECAF3"></asp:Label>
    
            <br />
            <asp:ScriptManager ID="ScriptManager1" runat="server"
                EnablePageMethods = "true">
            </asp:ScriptManager>
            <asp:TextBox ID="txtBoxNom" Text="nom " runat="server" Height="30px" 
                style="margin-left: 0px; margin-bottom: 0px;" Width="200px" Font-Names="Arial Black" 
                Font-Size="X-Large"></asp:TextBox>
                <cc1:AutoCompleteExtender ServiceMethod="GetProducts"
        MinimumPrefixLength="2"
        CompletionInterval="100" EnableCaching="false" CompletionSetCount="10"
        TargetControlID="txtBoxNom"
        ID="AutoCompleteExtender1" runat="server" FirstRowSelected = "false">
    </cc1:AutoCompleteExtender>
    


    le code de ma webmethod static que je place dans le code behind :

    [System.Web.Script.Services.ScriptMethod()]
     static String connString = @"Data Source=B0168;Initial Catalog=annuaire;Integrated Security=True";       
    
     [System.Web.Services.WebMethod]
    
            public static List<string> GetProducts(string prefixText, int count)
            {
                using (SqlConnection conn = new SqlConnection())
                {
                    conn.ConnectionString = connString;
    
                    using (SqlCommand cmd = new SqlCommand())
                    {
                        cmd.CommandText = "SELECT NOM FROM PERS WHERE NOM LIKE @prefixText + '%'";
                        cmd.Parameters.AddWithValue("@prefixText", prefixText);
                        cmd.Connection = conn;
                        conn.Open();
                        List<string> l = new List<string>();
                        using (SqlDataReader dr = cmd.ExecuteReader())
                        {
                            while (dr.Read())
                            {
                                l.Add(dr["NOM"].ToString());
                            }
                        }
                        conn.Close();
                        return l;
                    }
                }
            }
    


    Merci de votre attention :) .
    • Partager sur Facebook
    • Partager sur Twitter
      12 mars 2011 à 13:14:05

      Salut,

      En faite le problème ne venait pas du code (qui est correcte) mais d'une erreur d'inattention :p . J'espère que le sujet pourra être utile pour d'autre.
      • Partager sur Facebook
      • Partager sur Twitter

      [ASP/AJAX]AutoCompleteExtender

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown