1

嗨,我正在尝试将流沙过滤器和插件排序集成到我的网站中。但我收到这个错误:

未捕获的错误:语法错误,无法识别的表达式:[object Object]:checked

这是我的代码:

(function($) {
  $.fn.sorted = function(customOptions) {
    var options = {
      reversed: false,
      by: function(a) { return a.text(); }
    };
    $.extend(options, customOptions);
    $data = $(this);
    arr = $data.get();
    arr.sort(function(a, b) {
      var valA = options.by($(a));
      var valB = options.by($(b));
      if (options.reversed) {
        return (valA < valB) ? 1 : (valA > valB) ? -1 : 0;              
      } else {      
        return (valA < valB) ? -1 : (valA > valB) ? 1 : 0;  
      }
    });
    return $(arr);
  };
})(jQuery);

$(function() {

  var $filterType = $('#filter input[name="type"]');
  var $filterSort = $('#filter input[name="sort"]');

  var $applications = $('#applications');

  var $data = $applications.clone();

  $filterType.add($filterSort).change(function(e) {
    if ($($filterType+':checked').val() == 'alles') {
      var $filteredData = $data.find('li');
    } else if ($($filterType+':checked').val() == 'Kratten'){
      var $filteredData = $data.find('li[data-type=Kratten]');
    } else if ($($filterType+':checked').val() == 'Flessen'){
      var $filteredData = $data.find('li[data-type=Flessen]');
    } else if ($($filterType+':checked').val() == 'Blikjes'){
      var $filteredData = $data.find('li[data-type=Blikjes]');
    } else if ($($filterType+':checked').val() == 'Fusten'){
      var $filteredData = $data.find('li[data-type=Fusten]');
    }

    if ($('#filter input[name="sort"]:checked').val() == "prijs") {
      var $sortedData = $filteredData.sorted({
        by: function(v) {
          return parseFloat($(v).find('span[data-type=prijs]').text());
        }
      });
    } else if ($('#filter input[name="sort"]:checked').val() == "winkel"){
      var $sortedData = $filteredData.sorted({
        by: function(v) {
          return $(v).find('strong').text().toLowerCase();
        }
      });
    } else if ($('#filter input[name="sort"]:checked').val() == "merk"){
      var $sortedData = $filteredData.sorted({
        by: function(v) {
          return $(v).find('strong').text().toLowerCase();
        }
      });
    } else if ($('#filter input[name="sort"]:checked').val() == "verpakking"){
      var $sortedData = $filteredData.sorted({
        by: function(v) {
          return $(v).find('strong').text().toLowerCase();
        }
      });
    } else if ($('#filter input[name="sort"]:checked').val() == "literprijs") {
      var $sortedData = $filteredData.sorted({
        by: function(v) {
          return parseFloat($(v).find('span[data-type=prijs]').text());
        }
      });
    } else if ($('#filter input[name="sort"]:checked').val() == "kortingsperce") {
      var $sortedData = $filteredData.sorted({
        by: function(v) {
          return parseFloat($(v).find('span[data-type=kortingsperc]').text());
        }
      });
    }


    $applications.quicksand($sortedData, {
      duration: 800,
      easing: 'easeInOutQuad'
    });

  });

});

还有我的 HTML:

<form id="filter">
  <fieldset>
    <legend>Filter by type</legend>
    <label><input type="radio" name="type" value="alles" checked="checked">Alles</label>
    <label><input type="radio" name="type" value="Kratten">Kratten</label>
    <label><input type="radio" name="type" value="Flessen">Flessen</label>
    <label><input type="radio" name="type" value="Blikjes">Blikjes</label>
    <label><input type="radio" name="type" value="Kratten">Fusten</label>
  </fieldset>
  <fieldset>
    <legend>Sort by</legend>
    <label><input type="radio" name="sort" value="winkel" checked="checked">Winkel</label>
    <label><input type="radio" name="sort" value="verpakking">Verpakking</label>   
    <label><input type="radio" name="sort" value="merk">Merk</label> 
    <label><input type="radio" name="sort" value="prijs">Prijs</label> 
    <label><input type="radio" name="sort" value="literprijs">Liter Prijs</label> 
    <label><input type="radio" name="sort" value="kortingperc">Kortings Percentage</label>    
  </fieldset>
</form>
    <ul id="applications"><p></P><li data-type="Kratten">
    <div class="detaildiv">

            <div class="prod_photo">
                <div class="prod_photobox"><a href ="/bier/aanbiedingen/grolsch/krat-van-16-flesjes-a-045-liter"><img src="http://www.goedkooplaseren.nl/images/soort/9688-grolsch-krat-van-16-flesjes-a-045-liter.png" alt="Grolsch krat van 16 flesjes á 0,45 liter" title="Grolsch krat van 16 flesjes á 0,45 liter" width="80" height="64" class="" ></a></div>
            </div>

                <div class="fotowinkel">
                <div class="fotowinkelklein"><a href ="/bier/aanbiedingen/bij/agrimarkt"><img src="http://www.goedkooplaseren.nl/images/winkel/10401-agrimarkt.png" alt="" title="" width="50" height="34" class="" ></a></div>
            </div>

            <div class="prijsboven"><span data-type="prijs">&euro;10,00</span></div>

            <div class="textaanbieding">



                <div class="aanbiedingtitel"><h3><a href="/bier/merken/grolsch"><span data-type="merk">Grolsch</span></a></h3><p>Beugelkrat</div>

            <div class="price">
                <del>&euro;12,99</del>


                <div class="Xaanbiedinghidediv2" id = "hideb36078">
                    <p><span data-type="kortingsperc">Korting &euro;2,99 (23%)<br /> Per liter &euro;1,39</span></p>
                </div>
                <div class="textaanbiedinginfo"><p>
                <P>t/m zaterdag 25 januari</p>

            </div>
                <!-- <div class="winkelonder"><a href="/bier/aanbiedingen/bij/agrimarkt">Bij: agrimarkt</a> -->

            </div>  
            <div class="detaildiv2">
                <div class="aanbifo">
                    <a href="/bier/aanbiedingen/aanbieding/grolsch-verpakking-krat-van-16-flesjes-a-045-liter-winkel-agrimarkt-datum-19-01-2014tm25-01-2014" title="Bekijk gedetaileerde info over deze bier aanbieding." alt="Bekijk gedetaileerde info over deze bier aanbieding."></a>
                </div>
            </div>          
        </div>
    </li><li data-type="Kratten">
    <div class="detaildiv">

            <div class="prod_photo">
                <div class="prod_photobox"><a href ="/bier/aanbiedingen/grolsch/krat-van-24-flesjes-a-033-liter"><img src="http://www.goedkooplaseren.nl/images/soort/9819-grolsch-krat-van-24-flesjes-a-033-liter.png" alt="Grolsch krat van 24 flesjes á 0,33 liter" title="Grolsch krat van 24 flesjes á 0,33 liter" width="80" height="62" class="" ></a></div>
            </div>

                <div class="fotowinkel">
                <div class="fotowinkelklein"><a href ="/bier/aanbiedingen/bij/agrimarkt"><img src="http://www.goedkooplaseren.nl/images/winkel/10401-agrimarkt.png" alt="" title="" width="50" height="34" class="" ></a></div>
            </div>

            <div class="prijsboven"><span data-type="prijs">&euro;10,00</span></div>

            <div class="textaanbieding">



                <div class="aanbiedingtitel"><h3><a href="/bier/merken/grolsch"><span data-type="merk">Grolsch</span></a></h3><p>Krat</div>

            <div class="price">
                <del>&euro;12,99</del>


                <div class="Xaanbiedinghidediv2" id = "hideb36077">
                    <p><span data-type="kortingsperc">Korting &euro;2,99 (23%)<br /> Per liter &euro;1,26</span></p>
                </div>
                <div class="textaanbiedinginfo"><p>
                <P>t/m zaterdag 25 januari</p>

            </div>
                <!-- <div class="winkelonder"><a href="/bier/aanbiedingen/bij/agrimarkt">Bij: agrimarkt</a> -->

            </div>  
            <div class="detaildiv2">
                <div class="aanbifo">
                    <a href="/bier/aanbiedingen/aanbieding/grolsch-verpakking-krat-van-24-flesjes-a-033-liter-winkel-agrimarkt-datum-19-01-2014tm25-01-2014" title="Bekijk gedetaileerde info over deze bier aanbieding." alt="Bekijk gedetaileerde info over deze bier aanbieding."></a>
                </div>
            </div>          
        </div>
    </li><li data-type="Flessen">
    <div class="detaildiv">

            <div class="prod_photo">
                <div class="prod_photobox"><a href ="/bier/aanbiedingen/grolsch-herfstbok/set-van-6-flesjes-a-030-liter"><img src="http://www.goedkooplaseren.nl/images/soort/16420-grolschherfstboksetvan6flesjes0,30liter.jpg" alt="Grolsch herfstbok set van 6 flesjes á 0,30 liter" title="Grolsch herfstbok set van 6 flesjes á 0,30 liter" width="64" height="80" class="" ></a></div>
            </div>

                <div class="fotowinkel">
                <div class="fotowinkelklein"><a href ="/bier/aanbiedingen/bij/agrimarkt"><img src="http://www.goedkooplaseren.nl/images/winkel/10401-agrimarkt.png" alt="" title="" width="50" height="34" class="" ></a></div>
            </div>

            <div class="prijsboven"><span data-type="prijs">&euro;3,99</span></div>

            <div class="textaanbieding">



                <div class="aanbiedingtitel"><h3><a href="/bier/merken/grolsch-herfstbok"><span data-type="merk">Grolsch herfstbok</span></a></h3><p>Sixpack</div>

            <div class="price">
                <del>&euro;4,99</del>


                <div class="Xaanbiedinghidediv2" id = "hideb36079">
                    <p><span data-type="kortingsperc">Korting &euro;1,00 (20%)<br /> Per liter &euro;2,22</span></p>
                </div>
                <div class="textaanbiedinginfo"><p>
                <P>t/m zaterdag 25 januari</p>

            </div>
                <!-- <div class="winkelonder"><a href="/bier/aanbiedingen/bij/agrimarkt">Bij: agrimarkt</a> -->

            </div>  
            <div class="detaildiv2">
                <div class="aanbifo">
                    <a href="/bier/aanbiedingen/aanbieding/grolsch-herfstbok-verpakking-set-van-6-flesjes-a-030-liter-winkel-agrimarkt-datum-19-01-2014tm25-01-2014" title="Bekijk gedetaileerde info over deze bier aanbieding." alt="Bekijk gedetaileerde info over deze bier aanbieding."></a>
                </div>
            </div>          
        </div>
    </li><li data-type="Kratten">
    <div class="detaildiv">

            <div class="prod_photo">
                <div class="prod_photobox"><a href ="/bier/aanbiedingen/amstel/krat-van-24-flesjes-a-030-liter"><img src="http://www.goedkooplaseren.nl/images/soort/9679-amstel-krat-van-24-flesjes-a-030-liter.png" alt="Amstel krat van 24 flesjes á 0,30 liter" title="Amstel krat van 24 flesjes á 0,30 liter" width="80" height="48" class="" ></a></div>
            </div>

                <div class="fotowinkel">
                <div class="fotowinkelklein"><a href ="/bier/aanbiedingen/bij/albert-heijn"><img src="http://www.goedkooplaseren.nl/images/winkel/10400-AH.gif" alt="Albert heijn logo" title="Albert heijn logo" width="49,2857142857" height="50" class="" ></a></div>
            </div>

            <div class="prijsboven"><span data-type="prijs">&euro;9,49</span></div>

            <div class="textaanbieding">



                <div class="aanbiedingtitel"><h3><a href="/bier/merken/amstel"><span data-type="merk">Amstel</span></a></h3><p>Krat</div>

            <div class="price">
                <del>&euro;13,39</del>


                <div class="Xaanbiedinghidediv2" id = "hideb36091">
                    <p><span data-type="kortingsperc">Korting &euro;3,90 (29%)<br /> Per liter &euro;1,32</span></p>
                </div>
                <div class="textaanbiedinginfo"><p>
                <P>t/m zondag 26 januari</p>

            </div>
                <!-- <div class="winkelonder"><a href="/bier/aanbiedingen/bij/albert-heijn">Bij: albert-heijn</a> -->

            </div>  
            <div class="detaildiv2">
                <div class="aanbifo">
                    <a href="/bier/aanbiedingen/aanbieding/amstel-verpakking-krat-van-24-flesjes-a-030-liter-winkel-albert-heijn-datum-20-01-2014tm26-01-2014" title="Bekijk gedetaileerde info over deze bier aanbieding." alt="Bekijk gedetaileerde info over deze bier aanbieding."></a>
                </div>
            </div>          
        </div>
    </li><li data-type="Blikjes">
    <div class="detaildiv">

            <div class="prod_photo">
                <div class="prod_photobox"><a href ="/bier/aanbiedingen/amstel/set-van-6-blikjes-a-033-liter"><img src="http://www.goedkooplaseren.nl/images/soort/9735-amstel-set-van-6-blikjes-a-033-liter.png" alt="Amstel set van 6 blikjes á 0,33 liter" title="Amstel set van 6 blikjes á 0,33 liter" width="80" height="58" class="" ></a></div>
            </div>

                <div class="fotowinkel">
                <div class="fotowinkelklein"><a href ="/bier/aanbiedingen/bij/albert-heijn"><img src="http://www.goedkooplaseren.nl/images/winkel/10400-AH.gif" alt="Albert heijn logo" title="Albert heijn logo" width="49,2857142857" height="50" class="" ></a></div>
            </div>

            <div class="prijsboven"><span data-type="prijs">&euro;3,07</span></div>

            <div class="textaanbieding">



                <div class="aanbiedingtitel"><h3><a href="/bier/merken/amstel"><span data-type="merk">Amstel</span></a></h3><p>Sixpack</div>

            <div class="price">
                <del>&euro;4,09</del>


                <div class="Xaanbiedinghidediv2" id = "hideb36092">
                    <p><span data-type="kortingsperc">Korting &euro;1,02 (25%)<br /> Per liter &euro;1,55</span></p>
                </div>
                <div class="textaanbiedinginfo"><p>
                <P>t/m zondag 26 januari</p>

            </div>
                <!-- <div class="winkelonder"><a href="/bier/aanbiedingen/bij/albert-heijn">Bij: albert-heijn</a> -->

            </div>  
            <div class="detaildiv2">
                <div class="aanbifo">
                    <a href="/bier/aanbiedingen/aanbieding/amstel-verpakking-set-van-6-blikjes-a-033-liter-winkel-albert-heijn-datum-20-01-2014tm26-01-2014" title="Bekijk gedetaileerde info over deze bier aanbieding." alt="Bekijk gedetaileerde info over deze bier aanbieding."></a>
                </div>
            </div>          
        </div>
    </li><li data-type="Blikjes">
    <div class="detaildiv">

            <div class="prod_photo">
                <div class="prod_photobox"><a href ="/bier/aanbiedingen/amstel-00/set-van-6-blikjes-a-033-liter"><img src="http://www.goedkooplaseren.nl/images/soort/10125-amstel-00-set-van-6-blikjes-a-033-liter.png" alt="Amstel 0.0 set van 6 blikjes á 0,33 liter" title="Amstel 0.0 set van 6 blikjes á 0,33 liter" width="80" height="64" class="" ></a></div>
            </div>

                <div class="fotowinkel">
                <div class="fotowinkelklein"><a href ="/bier/aanbiedingen/bij/coop"><img src="http://www.goedkooplaseren.nl/images/winkel/10408-Naamloos.png" alt="coop logo" title="coop logo" width="50" height="21" class="" ></a></div>
            </div>

            <div class="prijsboven"><span data-type="prijs">&euro;5,00</span></div>

            <div class="textaanbieding">



                <div class="aanbiedingtitel"><h3><a href="/bier/merken/amstel-00"><span data-type="merk">Amstel 0.0</span></a></h3><p>2 sixpacks</div>

            <div class="price">
                <del>&euro;6,18</del>


                <div class="Xaanbiedinghidediv2" id = "hideb36094">
                    <p><span data-type="kortingsperc">Korting &euro;1,18 (19%)<br /> Per liter &euro;1,26</span></p>
                </div>
                <div class="textaanbiedinginfo"><p>
                <P>t/m zondag 26 januari</p>

            </div>
                <!-- <div class="winkelonder"><a href="/bier/aanbiedingen/bij/coop">Bij: coop</a> -->

            </div>  
            <div class="detaildiv2">
                <div class="aanbifo">
                    <a href="/bier/aanbiedingen/aanbieding/amstel-00-verpakking-set-van-6-blikjes-a-033-liter-winkel-coop-datum-20-01-2014tm26-01-2014" title="Bekijk gedetaileerde info over deze bier aanbieding." alt="Bekijk gedetaileerde info over deze bier aanbieding."></a>
                </div>
            </div>          
        </div>
    </li><ul>
4

0 回答 0