I have a simple page with two drop downs, one for country and one for cities in that country. When the user selects a country in the list I post the form and update the city list accordingly.
The Show button posts the same form.
I want to distinguish between a user selecting a country and clicking the Show button (different actions) what is the best way to do this?

You could give your Show submit button a name:
and then in the controller action check for the presence of the
showparameter in the request. If it is present it means that the form was submitted after clicking on theShowbutton. For the other case you will have to use javascript and manually submit the form by either calling.submit()or using AJAX. In both cases though theshowparameter will not be present in the request.