j'ai besoin d'un popup de confirmation sur une action delete sur mon datagrid.
j'ai suivi la FAQ pour creer le code.
Seulement, lorsque j'ajoute l'attribut au bouton, ca plante car il ne trouve pas le boutons
Voila le front code
le 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 <input id="ConfirmDelete" type="hidden" runat="server"> . . . . <Columns> <asp:BoundColumn Visible="False" DataField="ID" ReadOnly="True"></asp:BoundColumn> <asp:TemplateColumn> <ItemTemplate> <asp:ImageButton runat="server" ImageUrl="..\..\..\images\manage.png" CommandName="Manage" CausesValidation="false" AlternateText="Details" id="manageButton"></asp:ImageButton> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn> <ItemTemplate> <asp:ImageButton runat="server" ImageUrl="..\..\..\images\delete.gif" CommandName="Delete" CausesValidation="false" AlternateText="Delete" ID="deleteButton"></asp:ImageButton> </ItemTemplate> </asp:TemplateColumn>
et le code-behind
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <script language="javascript"> function confirmSubmit() { var msg = "Are you sure to delete this activity ?"; if (confirm(msg)) { document.formulaire.ConfirmDelete.value="oui"; } } </script>
J ai essaye en mettant le onClick directement dans <asp:ImageButton> mais j ai une erreur de compilation.
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 private void Page_Load(object sender, System.EventArgs e) { if (!IsPostBack) LoadData(); if ((ImageButton)this.XamuCustomDataGrid1.FindControl("deleteButton") != null) ((ImageButton)this.XamuCustomDataGrid1.FindControl("deleteButton")).Attributes.Add("onClick","return confirmSubmit();"); } private void XamuCustomDataGrid1_DeleteCommand(object source, DataGridCommandEventArgs e) { if (((HtmlInputHidden)this.FindControl("ConfirmDelete")).Value == "oui") { CvrActivity cvrAct = new CvrActivity(); cvrAct = instance.GetActivityById(long.Parse(e.Item.Cells[0].Text)); instance.DeleteActivityWithChild(cvrAct); LoadData(); } }
Et dans ce cas, rien ne se passe (ImageButton)this.XamuCustomDataGrid1.FindControl("deleteButton") reste tjrs null ?!?
ou est mon erreur ?
Partager