Let's assume a page displaying a list of activities.
They are some "Sport", some "Cinema" etc...

To the Left of the list, there is a special column allowing user to filter displayed data.
I'm focusing on the filter: Activity Type.

So the basic workflow is:

  1. The page displays all activities (without any filters) with refreshed data (query database for instance).
  2. The user selects the filter "Sport", in order to hide other kind of activities.

My question is: Should the set of the filter "Sport" involve a refresh of data?
Or should it just extract the corresponding data from the existing data (like a simple DOM manipulation for instance), even possibly stale?

Assuming that each click on distinct filter involves the refresh of data displayed, what strategy should I choose if user wants to refresh the current data (meaning keeping the same current filter)?
Thus, if I display a button named "Refresh" near to the items list, I think that can confuse the user => They can think: "If they place a refresh button near the items list, it means that setting one filter doesn't refresh the data... (and of course that was not the case) "

Or maybe...dealing with websockets, refreshing automatically the data (or warning of new items)? Therefore allowing to drop this concept of refresh button.

Thanks a lot

2 Answers 2


A filter is a filter and a sort is a sort

I find it rather hard to understand the purpose of the refresh button.

But the answer to your main question is simple - filter means filter, sort means sort. When you filter something you take away other things. Here's a dictionary definition:

Pass through a device to remove unwanted material.

Consider what will happen if you would need in the future to offer both sorting and filtering.

So if it is labelled 'filter', you have to refresh and remove irrelevant records. I'm next to certain that if pressing filter will do sort, user will be baffled by why they see records that they have chosen to filter.

  • I think I was not clear with the term "sort". I wanted to mean: "filtered" without any data refresh. Meaning possible action even if user lost its web connection. I agree, sort is inappropriate. I'm updating my question. => in both ways, I'd take away other things.
    – Mik378
    Mar 27, 2014 at 22:46
  • You well said: "you have to refresh and remove irrelevant records". The intent of my question was: "why not just removing without refreshing"? Therefore, sorry but your answer isn't adapted to my wondering..
    – Mik378
    Mar 27, 2014 at 22:50
  • So is this about Ajax vs Page reloads?
    – Izhaki
    Mar 27, 2014 at 23:23
  • Actually I own a single-page application, and it would be great if user could avoid to use f5 every time they want to refresh things. What I'm currently doing, is that each selected filter involves a refresh of the items list (as you suggested by the 'REFRESH then remove'). I wonder what should I suggest to the user to refresh the current items list while not clicking on a distinct filter? Indeed, if I suggest something thanks to a "Refresh" button or anything else, the user would deduce that a filter does not imply a refresh, and thus would make two refreshes: filter + button.
    – Mik378
    Mar 27, 2014 at 23:28

Re: option 1

I'm assuming you have this control area because there is more than 1 filter that can be applied at a time.

Consider renaming the refresh button to something actionable like "Refine Results"

That will make more contextual sense for the user.

Also look at how sites like ravelry.com, kijiji, eBay, and autotrader.ca do it. They have a million filters on the side.

(editorial note : screenshots coming)

re: option 2

Drop the refresh button altogether and auto refresh. I'm a fan of this option because it provides instant feedback but it makes more sense if you have only a few filter options.

Google has a primary filter (search) and it used to have an "advanced search" button that they've since renamed.

If you have too many filters, maybe consider which ones are primary or commonly used and use progressive disclosure for the rest.

Edit: In a more related site - because you're talking about activities- also look at coursera.org course listing. They use a persistent check box system which refreshes the list dynamically.

Edit2: Upon further thought - Provide Option 1 or Option 2 but not both unless required for some browser limitations. There is no need for this redundancy especially if it causes more wait time for the user via a confusing refresh function which essentially does nothing once the list is filtered based on their selections at the time of selection.

  • May 10 filters (not more) correspond to your notion of "few filters"? I'm pointing out that many combinations of them could be done. Looking like to autotrader.ca filters. I have a very similar filters form but on the left side and currently I'm refreshing the whole list each time one filter is set.
    – Mik378
    Mar 28, 2014 at 8:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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