Then your initial intend to use TimeInput is correct.
With the TimeInput widget you can have a variable in your code that will hold a user choice and then execute a logic when needed. So, what is the problem?
I believe, you could even find a real code example. Check for instance this post: