Strange. One thing I noticed (which I don’t think makes any difference) is that you are defining the onItemReady() function inside the dataset onReady() function. It really should be in the page’s onReady() and not the dataset’s onReady(). Something like this:
$w('#productsRepeater').onItemReady(productItemReady)
$w('#productsList').onReady( function() {
// updateFilterSelectedN()
// reloadProductsBasedOnFilter()
// sortProducts()
$w('#productsList').loadPage(2)
})
If you’re still having issue, please post the URL of your site and explain where and how I can see the issue.