I am not sure if this is the right forum to post this in, so my apologies if it isn't. But, I wanted to ask about the best method of dealing with the possibility of 10,20,30,...100 combinations of enabling/disabling page widgets based on the selection of drop-downs, check boxes, radio buttons, etc...?
So, an example would be: If my first object on the page was a drop-down, any selection would affect the enabling/disabling(hiding)of all objects on the page. Depending on the drop-down selection, I would move to the next enabled object, which in turn would drive the presentation for the remainder of the objects on the screen - and so on. So, there could be hundreds of combinations. [ April 29, 2008: Message edited by: K Robert ]
I've dealt with some painfully complex UIs like you describe.
Often, it indicates you're trying to do too much on one page.
Be sure to reevaluate what the page is doing, how everything works together, and if and how you can simplify - either by grouping elements together, or by splitting up to a more wizard-like format.
It can be increasingly tempting with goodies like DHTML and AJAX to have "one view," but frequently, the UI becomes too complex for anybody to use effectively.
There will always be people who are ahead of the curve, and people who are behind the curve. But knowledge moves the curve. --Bill James
Joined: May 16, 2003
We are trying to remove the complexity or, at least, minimize it. However, even one drop-down with 10 selections and 2 check-boxes can create many scanarios as they would also drive "screen help" for the specific combinations.
Even making the decision to pre-load data for a dependent dropdown can have significant impact on the original page load versus the cost of each update, so it's great you're trying to plan it out up front.
I feel for you! Sounds like lots of very detail-oriented work!
Joined: May 16, 2003
We were thinking about a 2-dimensional array that will interigate every possible combination and then set the values. But, like everyone is agreeing on, it's going to be a pain.
If anyone thinks of anything, please, let me know.