22

Admin tool. Table with thousands of items (users) sorted by name (from A to Z). The table has a pagination. Let's say you are on page #16 (out of 999). You are adding a new user. Where should the newly added user appear?

  1. The system should jump to page #1 and show the newly added user at the very top as a first item.
  2. The system should jump to the last page and show the newly added user at the bottom as the very last item.
  3. The system should add the newly added user to the corresponding page based on the sorting and do not jump anywhere from the current page.

Thoughts?

  • 1
    Why would adding a new item change the sorting from A-Z to by-date? – Chase Sandmann Jul 31 '18 at 16:07
  • Also, why is the table paginated? This is a workaround for web pages which do not support "virtual" views in which only the items currently displayed need to be kept in memory. Backporting a workaround to a platform that would get by without it is nonsensical. – Simon Richter Jul 31 '18 at 19:00
33
  1. The system should add the newly added user to the corresponding page based on the sorting and jump from the current page to the page of the newly added user.

    a. for extra affirmation, popup a notification with an option or link for the user to go to the new item/user:
    Your table would be shifted anyway, especially if the user is added in before the current page, it'd make sense to jump to that user and refresh your list and pagination, otherwise the list and pagination would be all messed up.

    b. flash the new item/user in the table that the user would have just added:
    This also gives your user an option to quickly see their newly created item, edit it or delete it without having the item being lost.

Hope this helps.

  • In addition you can have a history of page numbers to allow the user to easily return to a place where he was before. – mpasko256 Jul 31 '18 at 13:00
  • 8
    @mpasko256 I don't think I've ever seen a history of page numbers. Instead, why not just make sure the browser "back" button works? It seems easier to let the browser correctly handle the user's intention to return to where they were before. – maxathousand Jul 31 '18 at 14:57
  • @maxathousand Right! back button will be sufficient. I mean back/next buttons only navigate over some sort of history in principle. BTW I have seen an application once where history was "hierarchized": some kind of milestones (pages visited) divided into every atomic operation made by user – mpasko256 Jul 31 '18 at 15:39
  • I've had a similar problem recently but in addition to pagination/sort there's also filtering (via search, facets, etc). How would this answer apply in those situations? For example, filtering for users with "a" in their name but then you add a new user that doesn't have "a" in their name. There's no page to go to in this case. – TheCloudlessSky Jul 31 '18 at 16:32
  • 1
    @TheCloudlessSky you could either drop the filters altogether immediately when the user is created and still navigate to the new item; or in case of a notification or a popup with link to navigate to the new item, again let user click on the link and when you navigate to the new user, drop the filters. Hope this helps. – aly.i.ux Jul 31 '18 at 18:10
10

Another option that is quite common (e.g. Windows Explorer) is to add the user at the current position ignoring the sort position. This avoids the UI jumping around when new items are inserted.

This goes back to the question whether sorting is a state or a noun.

0

Since you did not specify the means of adding a new user I present two solutions.


Adding new user as an inline row with empty textboxes:

Add the row exactly where the user filled out the texboxes. It doesn't take long to realize that there is sorting logic in play when jumping from page to page.


Adding new user via pop-up with a dedication form:

Present a confirmation message whose purpose is UX discoverability:

New user added, re-load the table or refresh the page to see the new user.

  • Nitpick: these days there's no good reason to require the user to refresh the page in order to see new information; that sort of thing is a sign of a heavily outdated UI. – Daniel Beck Jul 31 '18 at 14:41
  • 1
    @DanielBeck It's a UX decision which is not set in stone. If the interface is sorting alphabetically by name user is on page 167 and decides to add Adam Acker then it would be jarring for some unrelated user to appear at the top and the bottom user moved off screen just because a user was added to page 1. – MonkeyZeus Jul 31 '18 at 14:47
  • That's a fair point. I still feel that "reload to see the results" feels outdated -- in that situation I wonder if a better solution might be be to show a notification but not repaginate until the next time the user steps to a different page... but that feels a little bit convoluted too. Objection withdrawn :) – Daniel Beck Jul 31 '18 at 14:56
  • 1
    @DanielBeck There are plenty of pleasantries which you can work into a UI. Just make sure to avoid jarring or unexpected visuals and the end user will survive the outdated solution :-) – MonkeyZeus Jul 31 '18 at 15:03
-3

Add the new user to the table, keeping the sorting, and then present the user with a dialog asking them "Would you like to navigate to the newly added user?" or something of the sort. If they say yes, take them to place where the user has been added, maybe with a highlight that fades away once the user has clicked or "viewed" the item.

As a user, I wouldn't expect the sorting to change just because I've added an item.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.