为什么这个带有匿名函数的jQuery Filter()不起作用

时间:2011-11-05 07:33:06

标签: jquery filter anonymous-function

<div class='volledige-breedte floatleft' style='border:1px solid #ff0080' >

<div class='filterDiv linken2x2links'><a href='http://www.staplijst.com/wsv-wetteren.asp' target='staplijst_link'><img src='{#ImageRoot}/groot/010.jpg' class='logo100' alt='WSV Wetteren AKTIVIA 010' align='left'></a><a href='http://www.staplijst.com/wsv-wetteren.asp' target='staplijst_link'><b>WSV Wetteren</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>AKTIVIA 010<br>   <div style='text-align:center;'><a href='{#WebRoot}/wandelclub-wsv-wetteren-aktivia-010.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor WSV Wetteren AKTIVIA 010'></a></div></div>
<div class='filterDiv linken2x2rechts'><a href='http://www.wandelclubegmont.be' target='staplijst_link'><img src='{#ImageRoot}/groot/163.jpg' class='logo100' alt='WSV Egmont - Zottegem AKTIVIA 163' align='left'></a><a href='http://www.wandelclubegmont.be' target='staplijst_link'><b>WSV Egmont - Zottegem</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>AKTIVIA 163<br><div style='text-align:center;'><a href='{#WebRoot}/wandelclub-wsv-egmont-uit-zottegem-aktivia-163.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor WSV Egmont - Zottegem AKTIVIA 163'></a></div></div>
  <div class='weg filterDiv linken2x2links'><a href='http://www.zandstappers.be' target='staplijst_link'><img src='{#ImageRoot}/groot/A044.jpg' class='logo100' alt='Wandelclub Zandstappers v.z.w. VWF A044' align='left'></a><a href='http://www.zandstappers.be' target='staplijst_link'><b>Wandelclub Zandstappers v.z.w.</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>VWF A044<br><div style='text-align:center;'><a href='{#WebRoot}/wandelclub-zandstappers-uit-wechelderzande-vwf-a044.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor Wandelclub Zandstappers v.z.w. VWF A044'></a></div></div>
<div class='weg filterDiv linken2x2rechts'><a href='http://www.waterhoekstappers.be' target='staplijst_link'><img src='{#ImageRoot}/groot/345.jpg' class='logo100' alt='De Waterhoekstappers - Heestert AKTIVIA 345' align='left'></a><a href='http://www.waterhoekstappers.be' target='staplijst_link'><b>De Waterhoekstappers - Heestert</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>AKTIVIA 345<br><div style='text-align:center;'><a href='{#WebRoot}/wandelclub-waterhoekstappers-uit-heestert-aktivia-345.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor De Waterhoekstappers - Heestert AKTIVIA 345'></a></div></div>
  <div class='weg filterDiv linken2x2links'><a href='http://www.stormvogels.be' target='staplijst_link'><img src='{#ImageRoot}/groot/070.jpg' class='logo100' alt='WSV De StormVogels vzw Oostende AKTIVIA 070' align='left'></a><a href='http://www.stormvogels.be' target='staplijst_link'><b>WSV De StormVogels vzw Oostende</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>AKTIVIA 070<br><div style='text-align:center;'><a href='{#WebRoot}/wandelclub-stormvogels-uit-oostende-aktivia-070.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor WSV De StormVogels vzw Oostende AKTIVIA 070'></a></div></div>
<div class='weg filterDiv linken2x2rechts'><a href='http://www.wandelmee.be' target='staplijst_link'><img src='{#ImageRoot}/groot/A054.jpg' class='logo100' alt='wandelmee.be VWF A054' align='left'></a><a href='http://www.wandelmee.be' target='staplijst_link'><b>wandelmee.be</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>VWF A054<br><div style='text-align:center;'><a href='{#WebRoot}/wandelmee.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor wandelmee.be VWF A054'></a></div></div>
<div class='filterDiv linken2x2links'><a href='http://www.velodroomvrienden.be' target='staplijst_link'><img src='{#ImageRoot}/groot/347.jpg' class='logo100' alt='Velodroomvrienden Moorslede AKTIVIA 347' align='left'></a><a href='http://www.velodroomvrienden.be' target='staplijst_link'><b>Velodroomvrienden Moorslede</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>AKTIVIA 347<br><div style='text-align:center;'><a href='{#WebRoot}/wandelclub-velodroomvrienden-uit-moorslede-aktivia-347.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor Velodroomvrienden Moorslede AKTIVIA 347'></a></div></div>
<div class='filterDiv linken2x2rechts'><a href='http://www.sterrebosstappers.be' target='staplijst_link'><img src='{#ImageRoot}/groot/314.jpg' class='logo100' alt='Sterrebosstappers Roeselare AKTIVIA 314' align='left'></a><a href='http://www.sterrebosstappers.be' target='staplijst_link'><b>Sterrebosstappers Roeselare</b></a>&nbsp;<img src='{#ImageRoot}/staplijst-zonnetje.gif' class='inline-icon16' alt='licentiehouder van Staplijst'><br><br>AKTIVIA 314<br><div style='text-align:center;'><a href='{#WebRoot}/wandelclub-sterrebosstappers-uit-roeselare-aktivia-314.asp'>alle statistieken en grafieken&nbsp;<img src='{#ImageRoot}/btngrafiek24.png' class='inline-icon24' alt='wandelstatistieken, uitslagen en grafieken voor Sterrebosstappers Roeselare AKTIVIA 314'></a></div></div>

</div>

<script type="text/javascript">

 function performFilter() {

    var filterArgument = $("#filterargument").val();
    // alert(filterArgument);
    //    $('.filterDiv').filter(':even').css('background-color', '#ffccff');
    //    $('.filterDiv').filter(':odd').css('background-color', '#c1ffe0');
    $('.filterDiv a[href]').filter(':even').css('border', '1px solid red');
    $('.filterDiv').css('height','150px').filter(':even').text('text replaced !' + filterArgument);
    $('.filterDiv').filter(
         function(index) {
            return  $(this).hasClass('weg');
         }
      ).css('background-color', '#c1ffe0');
   }
   $(document).ready(performFilter);
 </script>

正如您在上面所看到的,我正在玩jQuery并考虑到最终结果,让用户在名为filterargument的字段中输入一些字符,之后只包含<div>元素将显示输入的字符(其余字符将使用.hide()方法隐藏。

与往常一样,我倾向于首先尝试一些小事,然后慢慢建立最终代码(以充分理解事情发生的原因和原因)。

filter(':even')filter(':odd')的行似乎有效,但

$('.filterDiv').filter(
         function(index) {
            return  $(this).hasClass('weg');
         }
      ).css('background-color', '#c1ffe0');

没有。我可能错过了一些明显的东西(我当然会尝试自己找到解决方案,但同时我希望你们中的一些人可能会指出我的错误。

提前致谢。

更新

作为我收到的第一个答案的结果,我添加了'。' filterDiv前的角色。这是解决方案。

1 个答案:

答案 0 :(得分:3)

我想它必须是

$('.filterDiv').filter....

:)