Il y a quelques mois, je l'ai programmé un ASP.NET GridView avec une coutume "Supprimer" LinkButton et JavaScript côté client Confirmation selon cet article msdn:ASP.NET GridView "Confirmation côté client lors de la suppression" cessé de travailler sur IE - comment se fait-il?
http://msdn.microsoft.com/en-us/library/bb428868.aspx (publié en Avril 2007)
ou par exemple Javascript before asp:ButtonField click
Le code ressemble à ceci:
<ItemTemplate>
<asp:LinkButton ID="deleteLinkButton" runat="server"
Text="Delete"
OnCommand="deleteLinkButtonButton_Command"
CommandName='<%# Eval("id") %>'
OnClientClick='<%# Eval("id", "return confirm(\"Delete Id {0}?\")") %>'
/>
</ItemTemplate>
Étonnamment, "Annuler" ne fonctionne pas plus avec mon-à-dire (Version: 6.0.2900.2180.xpsp_sp2_qfe.080814-1242
) - il supprime toujours la ligne. Avec Opera (Version 9.62), il fonctionne toujours comme prévu et décrit dans l'article msdn. Plus étonnant, sur la machine d'un collègue de travail avec la même version ie, cela fonctionne toujours ("Annuler" ne supprimera pas la ligne).
Le code généré ressemble
<a onclick="return confirm(...);" href="javascript:__doPostBack('...')">
Comme confirmation (...) retourne false sur "Annuler", j'attends l'événement __doPostBack dans le href de ne pas tirer. Existe-t-il des paramètres étranges, c'est-à-dire que j'ai accidentellement changé? Quoi d'autre pourrait être la cause de ce comportement étrange? Ou est-ce un "s'il vous plaît réinstaller WinXP" problème?