Bonjour à tous.
Je suis confronté à un souci dont je ne trouve pas la solution.
Je crée des hyperlink avec du CodeBehind mais je dois récupérer un ClientId dans une fonction JavaScript. Sauf que le contrôle n'étant pas déclaré il ne me le trouve pas au bon moment.
Voici comment je crée les HyperLink :
Et voici la fonction javascript :
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
17
18
19 Dim LParam(0) As SqlParameter LParam(0) = New SqlParameter("MenuId", "2be1310f-a588-4423-a9c1-a1bea45c11cd") Dim dtMenu As DataTable = RetournerTableP("SELECT PageId, Target, Ordre_Menu FROM CORE_Menu_Composition WHERE MenuId = @MenuId ORDER BY Ordre_Menu", LParam) For Each dr As DataRow In dtMenu.Rows Dim hl As New HyperLink With hl .Text = dr.Item("Target") .NavigateUrl = "" .ToolTip = dr.Item("Target") .CssClass = "hlMenu" .Attributes("onmouseover") = "ouverturemenu(this," & dr.Item("Ordre_Menu") & ");" .Attributes("onmouseout") = "document.getElementById('menu" & dr.Item("Ordre_Menu") & "').style.display = 'none';" .Attributes("name") = "hlMenu" & dr.Item("Ordre_Menu") .Width = Unit.Pixel(250) .ID = "hlMenu" & dr.Item("Ordre_Menu") End With divHyperLink.Controls.Add(hl) Next
Et donc il me renvoi le message suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function retourfondnoir(indexdiv) { clearTimeout(iTimer); ouverturemenu(document.getElementById("<%= hlMenu1.ClientID %>"), 1); document.getElementById("menu" + indexdiv).style.display = "none"; }
Je ne sais pas comment faire pour lui faire parvenir le bon ID au bon moment.Le nom 'hlMenu1' n'est pas déclaré.
Merci pour votre aide.
Partager