I suppose it could be done that way, provided it worked. But still, it would require burdensome coding to make it happen.
For example, look at http://sovereignstates.net/StateLegislators/VSLegTracker.php
The behavior is shown in the drop down for the "Pick a state" options. If you pick "House" in the "Chamber" options, California should hide because it does not have a House. It has an Assembly.
You can see it hides in FFox, but not IE or Chrome. But check the keypress feature by pressing "C" in FFox, and California will display. So, really, none of them work as they should.
Now, to do the work-around suggested by actually removing these elements would mean storing removed elements in an array and accessing the array to get them back by appending into options. Sort of a "Recycle Bin," if you will. This would be required because you have to remember the name, value, id, class, style, etc. of the element. So, to store all that and hope you don't miss anything could be a pain, and probably asking for unwanted bugs.
Actually, what would probably be best is to have some Jquery code that performs like option and just scrap HTML's option altogether.