javascript-仅显示类名等于多个选定复选框值jQuery的项目
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-仅显示类名等于多个选定复选框值jQuery的项目,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1895字,纯文字阅读大概需要3分钟。
内容图文
我想创建一个筛选器系统,其中仅显示具有与所选复选框值相同的类名的文章.
用户可以选择多个cb,结果应仅为那些文章.
我知道如何显示具有相同所选复选框值的文章,但是当选择多个复选框值时,仍然显示不包含那些cb值之一的文章,因此我尝试使其变得更聪明.
到目前为止没有运气.
编辑链接:http://strosslenet.nl/demo/-更改了链接,以便其他人也可以查看.
jQuery代码:
$("#filters :checkbox").click(function() { // if click on a checkbox
$(".widget-lijst article").hide(); // hide all the items first
var valCB = $(this).val() // value of the checkbox;
$("#filters :checkbox:checked").each(function() {
var valObj = $("." + $(this).val()); // value of the object
var $allClasses = valObj.attr('class').split(' '); // splits every class in a object
console.log(valObj);
for(var i=0; i < $allClasses.length; i++) {
if($allClasses == valCB) {
console.log('true');
} else {
console.log('false');
}
}
});
});
HTML代码:
<ul id="filters">
<li>Type
<ul>
<li><input type="checkbox" value="category-sc" id="sc" /><label for="category-sc">Site content</label></li>
<li><input type="checkbox" value="category-va" id="va" /><label for="category-va">Visitor accelerator</label></li>
<li><input type="checkbox" value="category-ad" id="ad" /><label for="category-ad">Ad only</label></li>
</ul>
</li>
</ul>
这些项目是由Wordpress帖子创建的.
Ajaxshowtime具有class’category-sc’
辣妹全景课程的类别为“ category-va”
博蒙德同时拥有
因此理想的情况是,当同时选择了访客加速器和网站内容时,只会显示Beaumonde.
解决方法:
您可以尝试以下操作(我已在代码中添加了注释)
$("#filters :checkbox").change(function() { // if checkbox state changes (in case a label is clicked)
$(".widget-lijst article").hide(); // hide all the items first
var selector = ''; // create a selector
$("#filters :checkbox:checked").each(function() {
selector += '.' + $(this).val(); // append selected values to selector (no spaces so classes are combined if multiple)
});
$(selector).show(); // show matching articles
});
内容总结
以上是互联网集市为您收集整理的javascript-仅显示类名等于多个选定复选框值jQuery的项目全部内容,希望文章能够帮你解决javascript-仅显示类名等于多个选定复选框值jQuery的项目所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。