I left a comment on Rob Chartier's blog about adding confirmation prompts to buttons, now I do use Andy Smith's Confirmed Buttons controls where I can, but if I need to add a simple confirmation to a button, I tended to use the following sytax from code-behind:

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

Now, this does work, but it has a bug around in-page validation - Andy Smith pointed out the error - and the reason why this wouldn't work in .NET 1.0 - which I hadn't noticed! Here's his reply:

Scott, Yes, ConfirmedButtons was originally created because of a bug in v1.0 of the framework. The validation framework didn't combine your onclick with it's own onclick, as it does in v1.1, but instead created two onclick attributes on the button, which meant one of them didn't fire. I created ConfirmedButtons to combine the two onclicks together at the clientside.

Which also brings up a bug in your implementation. You only want to return false if the user chooses no. otherwise the validation doesn't fire, as it gets combined to be after any user onclick stuff. So you want to change it to Attributes.Add("onclick", "if ( !window.confirm( 'sure?' ) ) { return false; }" )

Just another reason why the imminent beatification  of Mr. Smith should come as no surprise to anyone (note: I may just have imagined this :0))