# Ik voeg bevestiging toe aan knopen... en waarom ik het de hele tijd verkeerd heb gedaan...

<datetime class="hidden">2004-02-20T00:00</datetime>

<!-- category -- mostlylucidcouk, Imported, ASP.NET, JavaScript, Security, Validation, ClientSide -->
Ik heb een opmerking achtergelaten over [Rob Chartier's blog](http://weblogs.asp.net/rchartier) over [bevestigingsopdrachten toevoegen aan knoppen](http://weblogs.asp.net/rchartier/posts/43359.aspx), nu gebruik ik [Andy Smith's](http://weblogs.asp.net/asmith) [Bevestigde knoppen](http://www.metabuilders.com/Tools/ConfirmedButtons.aspx) controles waar ik kan, maar als ik een eenvoudige bevestiging aan een knop moet toevoegen, heb ik de volgende sytax van code-behind gebruikt:

Knop1.Knop.Attributes.Add("OnClick","javascript: return confirme('Are you sure you want to delete this forum?");");

Dit werkt, maar het heeft een bug rond in-page validatie - Andy Smith wees op de fout - en de reden waarom dit niet zou werken in .NET 1.0 - die ik niet had gemerkt! Hier is zijn antwoord:

*Scott, Ja, BevestigdButtons werd oorspronkelijk gemaakt vanwege een bug in v1.0 van het kader. Het validatiekader combineerde uw onclick niet met zijn eigen onclick, zoals het doet in v1.1, maar in plaats daarvan creëerde twee onclick attributen op de knop, wat betekende dat een van hen niet brandde. Ik creëerde BevestigdeButtons om de twee onclicks samen te combineren bij de clientside. Wat ook een bug in uw implementatie brengt. U wilt alleen onjuist terugsturen als de gebruiker nee kiest. anders brandt de validatie niet, omdat het gecombineerd wordt om na een gebruiker te klikken op spullen. Dus u wilt het wijzigen naar attributen.Add("onclick", "if ( !window.confirment( 'sure?' ) {return false; }"*

Gewoon een andere reden waarom de aanstaande zaligverklaring van de heer Smith als geen verrassing voor iemand zou moeten komen (noot: Ik kan gewoon hebben gedacht dit:0))