Ask HN: How would you handle this design dilemma?
Guideline #1. Anytime data is entered into a textbox, it should be acted upon immediately. If it's invalid, it should be rejected NOW. If it affects other data on the screen, that data should be changed NOW. If it causes navigation, that navigation should happen NOW. Note that this is not your standard "fill out a form hit Submit" logic.
Guideline #2. If the user wants to navigate somewhere, that should also happen NOW. If he clicks on a link, he should be taken there NOW. If he wants to change his view, that should happen NOW. If he wants to enter another field, he should just click there and his focus should move NOW.
What should I do if my user enters data that requires some action AND wants to navigate at the same time? Which is more urgent, dealing with the data entered or going where he wants to go?
For example, he enters invalid data in a textbox, but before hitting "Tab" or "Enter" he clicks on a link. Or he clicks on another field on the page. Should I make him deal with the invalid data now, then navigate? Or should I navigate and hold that data in suspense? Or should I navigate and discard the text box entry altogether?
I know this sounds trivial, but lately it's driving me nuts.
Any thoughts?