Je reviens à la charge avec un problème que je n'arrive pas à résoudre.
J'ai un moteur de recherche qui effectue donc une requete lorsqu'on clique sur un des boutons de recherche pour ensuite afficher un datagrid, qui contient des Imagebuttons.
Mon problème est que je suis obligé de cliquer 2 fois qur les imagebutton pour que l'évènement onclick (qui ouvre une popup) se lance.
La première fois, rien ne se passe à part qu'il y a (il me semble) un rafraichissement de la page ou du datagrid sans changer les données.
Au deuxième clic, c'est bon.
Je n'ai pas toruvé de solution et je deviens zinzin lol
Voici mon code pour le datagrid et un imagebutton :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <asp:DataGrid id="Datagrid1" runat="server" AllowPaging="true" AllowSorting="true" Visible="true" ShowHeader="true" BackColor="#efefef" AlternatingItemStyle-BackColor="#ffffff" BorderColor="#a9a9a9" BorderStyle="Solid" BorderWidth="1px" ItemStyle-Height="40px" Width="940px" AutoGenerateColumns="false"> <COLUMNS> <ASP:TEMPLATECOLUMN> <ITEMTEMPLATE> <ASP:IMAGEBUTTON id="IMGsupp" Runat="server" AlternateText="Supprimer la D.A" ImageUrl='<%# ChangeImageSupprimeDA(DataBinder.Eval(Container,"DataItem.Numero_DA")& "|" &DataBinder.Eval(Container,"DataItem.Service_1")& "|" &DataBinder.Eval(Container,"DataItem.Service_2")& "|" &DataBinder.Eval(Container,"DataItem.Demandeur")& "|" &DataBinder.Eval(Container,"DataItem.Validee")& "|" &DataBinder.Eval(Container,"DataItem.Date_validation"))%>' CommandArgument='<%# DataBinder.Eval(Container,"DataItem.Numero_DA")& "|" &DataBinder.Eval(Container,"DataItem.Service_1")& "|" &DataBinder.Eval(Container,"DataItem.Service_2")& "|" &DataBinder.Eval(Container,"DataItem.Demandeur")& "|" &DataBinder.Eval(Container,"DataItem.Validee")& "|" &DataBinder.Eval(Container,"DataItem.Date_validation")%>' OnCommand="SupprimeDA"> </ASP:IMAGEBUTTON> </ITEMTEMPLATE> </ASP:TEMPLATECOLUMN> </COLUMNS> <HeaderStyle BackColor="#e6e6e6" ForeColor="Black" Font-Size="12pt" Font-Bold="True" HorizontalAlign="Center" /> <PagerStyle BackColor="#e6e6e6" ForeColor="Black" Font-Size="8pt" Font-Bold="True" HorizontalAlign="Right" Mode="NumericPages" Position="TopAndBottom" PageButtonCount="10" /> </asp:DataGrid>
Et voici la fonction que j'appelle pour ouvrir la fenetre et supprimer un enregistrement pour le premier ImageButton:
Merci d'avance si vous avez une solution.
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 Public Sub SupprimeDA(ByVal monobject As System.Object, _ ByVal e As System.Web.UI.WebControls.CommandEventArgs) TBLResultat.Visible = False TBLInfos.Visible = False Dim ServDemandeur As String Dim NomPrenom As String Dim SepareVar Dim VarNumero_DA Dim VarService_1 Dim VarService_2 Dim VarDemandeur Dim VarValidee Dim VarDate_validation 'recupère les informations nécessaires en les séparant d'après le caractère "|" SepareVar = Split(monobject.CommandArgument, "|") VarNumero_DA = SepareVar(0) VarService_1 = SepareVar(1) VarService_2 = SepareVar(2) VarDemandeur = SepareVar(3) VarValidee = SepareVar(4) VarDate_validation = SepareVar(5) VerifiSignataires(monobject.CommandArgument, Nom & " " & Prenom) 'If (Direction = "A" Or Direction = "CG" _ If (Direction = "A" _ Or NomPrenom.Concat(Nom & " " & Prenom) = VarDemandeur) _ And monobject.ImageURL = "img/supprimer.gif" Then monobject.Attributes("onClick") = "javascript:" & _ "window.open('Suppression.aspx?num=" & VarNumero_DA & "','fullscreen');return(false)" End If End Sub
@ bientôt
Partager