php – jQuery多个复选框页面过滤器
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – jQuery多个复选框页面过滤器,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2052字,纯文字阅读大概需要3分钟。
内容图文
![php – jQuery多个复选框页面过滤器](/upload/InfoBanner/zyjiaocheng/752/a8b6cbd9d52e437ea2f203936af9df64.jpg)
我一直在试图弄清楚如何正确地做到这一点,似乎无法让它发挥作用.
我想使用jQuery从本质上挑选我想要在页面上显示的内容.我看了,试图找到一些脚本,某种有效,但不是我想要的.
该页面将使用复选框作为“标签”,让我们说艺术,电脑,健康,视频游戏
<div class="tags">
<label><input type="checkbox" class="arts" /> Arts </label>
<label><input type="checkbox" class="computers" /> Computers </label>
<label><input type="checkbox" class="health" /> Health </label>
<label><input type="checkbox" class="video-games" /> Video Games </label>
</div>
然后在页面上会有结果,每个结果都附有标签.
<ul class="results">
<li class="arts computers">
Result 1
</li>
<li class="video-games">
Result 2
</li>
<li class="computers health video-games">
Result 3
</li>
<li class="arts video-games">
Result 4
</li>
</ul>
我希望能够点击艺术和视频游戏,它将显示包含艺术和视频游戏的所有内容,因此结果为4.或者只能选择计算机并获得结果1和3.
我以为我可以做一些事情
$('.tags input').click( function() {
$('.results > li').hide();
//For each one checked
$('input').is(':checked').each( function() {
//Display that result
$('.results li').hasClass($(this).attr('class')).show();
});
});
但它不起作用,它只是隐藏了一切,但后来又没有回来显示其余部分.我知道逻辑是完全错误的,我不认为我应该以这种方式使用每一个?也许用它来获取数组中的所有类然后显示具有这些类的li?
有任何想法吗?
解决方法:
>使用复选框的.change()事件.
> .hasClass()返回一个布尔值.
>将该信息存储为除类之外的属性(例如rel或data- *属性)更有意义.
$('div.tags').delegate('input:checkbox', 'change', function()
{
var $lis = $('.results > li').hide();
$('input:checked').each(function()
{
$lis.filter('.' + $(this).attr('rel')).show();
});
}).find('input:checkbox').change();
演示:http://jsfiddle.net/mattball/d2v4Q/
@Justin问道
How would you change this to return only the lis that match all of the checked boxes instead of any one of them?
从每个检查输入到数组的东西(你正在使用的任何属性),String.join(‘.’)创建一个大类选择器,然后.filter()和之前的< li> s:
var selector = $('input:checked').map(function ()
{
return $(this).attr('rel');
}).get().join('.');
$lis.filter(selector).doWhatever();
内容总结
以上是互联网集市为您收集整理的php – jQuery多个复选框页面过滤器全部内容,希望文章能够帮你解决php – jQuery多个复选框页面过滤器所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。