IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[UserControl] Plusieurs fois le meme ID dans le code HTML


Sujet :

ASP.NET

  1. #1
    Membre averti
    Avatar de UNi[FR]
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2002
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Juin 2002
    Messages : 340
    Points : 448
    Points
    448
    Par défaut [UserControl] Plusieurs fois le meme ID dans le code HTML
    Bonjour à tous,

    habitué des winforms et de wpf je dois mettre en place un site intranet

    je dois mettre en place un menu qui se charge dynamiquement et ajouter un rollover sur les items de mon menu

    J'ai donc placer 2 composants image dans un UserControl MenuItem

    ASP.net (MenuItem.ascx):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <asp:Panel ID="Panel1" runat="server" Width="96px" onload="Panel1_Load">
        <asp:Image ID="img_normal" runat="server" Height="89px" Width="96px" />
        <asp:Image ID="img_over" runat="server" Height="89px" Width="96px" 
            Visible="False" />
    </asp:Panel>
    dans mon UserControl Menu je charge dynamiquement les UserControl MenuItem

    C# (Menu.ascx.cs) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
                panelItem.Controls.Clear();
                // - Requete LINQ -
                var _db = new DataClasses1DataContext(Resource.StrConnection);
                var _query =
                        from r in _db.rubriques
                        where r.parent_id.Value.Equals(1)
                        select r;
                var _result = _query.ToList();
     
                // - Construction du Menu -
                for (int i = 0; i < _result.Count; i++)
                {
                    var _mi = LoadControl("MenuItem.ascx") as MenuItem;
                    _mi.Rubrique = _result[i];
                    panelItem.Controls.Add(_mi);
                }
    et donc mon code C# de MenuItem j'associe l'image au composant Image

    C# (MenuItem.ascx.cs) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
                m_imageNormale = "bt_" + m_rubrique.id.ToString() + "_off";
                m_imageOver = "bt_" + m_rubrique.id.ToString() + "_on";
     
                if (img_normal == null) img_normal = new Image() { Width = 96, Height = 89 };
                img_normal.ImageUrl = "~/Images/" + m_imageNormale + ".png";
                if (img_over == null) img_over = new Image() { Width = 96, Height = 89 };
                img_over.ImageUrl = "~/Images/" + m_imageOver + ".png";
     
     
                img_normal.Attributes.Add("onmouseover", "msover('"+ img_normal.ClientID + "', '" + img_over.ImageUrl + "');");
                img_over.Attributes.Add("onmouseout", "msout('"+img_over.ClientID + "', '" + img_normal.ImageUrl + "');");
    seulement ce que je ne comprend pas c'est dans le code HTML généré tout mes MenuItem on le même ID alors comment les différencier lors d'un appel en Javascript ??

    merci d'avance pour votre aide !

  2. #2
    Membre averti
    Avatar de UNi[FR]
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2002
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Juin 2002
    Messages : 340
    Points : 448
    Points
    448
    Par défaut
    le probléme vient du fait que je n'ai pas nommé mon Item ce qui donne ceci dans le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
                // - Construction du Menu -
                for (int i = 0; i < _result.Count; i++)
                {
                    var _mi = LoadControl("MenuItem.ascx") as MenuItem;
                    _mi.ID = "item_"+(i+1);
                    _mi.Rubrique = _result[i];
                    panelItem.Controls.Add(_mi);
                }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 07/06/2010, 13h12
  2. repeter plusieurs fois le meme script dans une page
    Par juju03 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 02/07/2008, 11h22
  3. Formulaire regroupant plusieur fois le meme sous-formulaire?
    Par Goldenduck4000 dans le forum Access
    Réponses: 2
    Dernier message: 18/04/2006, 15h57
  4. Réponses: 2
    Dernier message: 15/03/2006, 18h48
  5. Réponses: 11
    Dernier message: 02/02/2005, 12h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo