I have a modal window with a table of items. Items have different statuses and the user can change the status. For example, from Not shipped to Backordered. The problem is when yo have the item quantity > 1. Then the user should be able to change the status for one item, all, or some. And I got stuck as I can't find any good pattern that would work here. I'm trying to avoid opening another modal window (the table itself is a modal window). The solution I have on the wireframe seems weird. Because the user has to change the number first and then click the link.
1 Answer
Try offloading the action to a single label (a text button) at the end of the statement, and have an input to select the quantity as a separate control.
This way a user can select the quantity from a combo text input / dropdown (and you can use a tab index, so users can navigate into the field via the keyboard), where there's an 'ALL' selection, or user can type or select a quantity. When the quantity is 1, there's no need for the input / dropdown (it can be disabled).
Pressing the ending word initiates the action.
One thing i don't see in the mock you have is if there is an after state, at least a confirmation of a successful change.
After modifying
This is a very simple sketch, and you may have to experiment with the graphic balance so users know which control does what. That's something you can test with a prototype.
-
Nice one. But doesn't Undo imply that it will revert back to the previous state? Depending on the OP's situation wouldn't it be better to use "Change" to hint to the user to decide a new value, for example?– LucianoSep 29, 2021 at 8:24
-
@Luciano from what i can tell from the post, this is in a dialogue, so this action would totally undo and effectively set the value to 'none'. That way if they selected the wrong row, they wouldn't have to set the value to '0' (which I wouldn't include). Any other change would just be them reentering a correct value, then hitting the button. That's also why I was using present tense imperative vs. past tense once the button has been pushed to show the contrast of states.– Mike MSep 29, 2021 at 13:43