ここでJSコードに2つの問題があり、助けていただければ幸いです...
価格が499ドルの製品がある場合に、「50を超える」オプションがフィルタリングリストに表示されるようにロジックを追加する必要があります。私の現在の実装では、これは機能していません。
<li> <!-- over 50 product is not showing when filtering --> <a href="/product-three">Product Four</a><br> <span id="lowestPriceRange">400</span> <span id="highestPriceRange">400</span> </li> // Because I need to handle it here somehow but I'm stuck var hidePrices = {}; hidePrices[0] = true; hidePrices[10] = true; hidePrices[20] = true; hidePrices[30] = true; hidePrices[40] = true; hidePrices[50] = true; $('#products').find('span').each(function(i, el){ var key = parseInt(Math.floor($(this).html() / 10) * 10, 10); hidePrices[key] = false; }); $('#filterByPrice').find('li').each(function(i, el){ if (hidePrices[Number($(this).find('a').attr('name'))]) { $(this).hide(); } });
表示したい商品が隠れています。たとえば、40ドルから50ドルのフィルタリングオプションが選択されている場合に、40ドルから60ドルの間の価格の製品を表示したいとします。