That works for cancel but as I stated above, “Cancel” is just a label, the action could be anything from “find postal code” to “delete”. It’s like using Prado’s [font=“Courier New”]OnCommand[/font].
For instance, I have a form which allows the user to enter his e-mail alias for a Postfix e-mail system with MySQL backend. But he can also delete the alias from the same page. I have not been able to find a “light” alternative to having two buttons each one using the same action which renders the page. An alternative could be a CHtml::Button submitting to another action which delete the alias and then have that action redirecting the browser to the original action, but that seems a bit too much to me, since there’s a get for the delete and then another get for the rendering, instead of just a single post.
It could work with Ajax, but it seems to me kind of an overkill for something so simple, and it becomes overcomplex for setting flashes, updating the page and reporting errors.