Hunter, exactly, that approach works perfectly for a map service with a small set of layers with a small number of queries. In fact, I had started setting this kind of system up with Robert's eSearch, to basically clone this functionality into the eSearch widget. And it works quite nicely. It would also work with ESRI's Query widget.
However, for the site I am working on, we have 30 layers in the map service, each with about 20 attributes, and users would want to be able to all the operators for every field in every layer: greater/less than, equal, and 'like' for text strings. In other words, tens of thousands of possible queries. And it would also be useful to have logical operators to string queries together, such as parcels greater than 1 acre AND real estate value less than 100,000 dollars. And also the spatial element, allowing to search Within, Outside, Intersecting... etc. In other words, replicating the ArcMap Select by Attributes and Select by Location. Both of my linked examples do this. Now I just need to port it into WAB. For me... well, that will not be a small task. But if I must, I will do it. I just want to inquire first if that is on ESRI's task list for a new widget to add to the next release of WebApp Builder? Do you know Hunter if ESRI has any plans to add such a feature into WAB?