Dil*_*998 5 html javascript checkbox jquery
我希望 jQuery 根据 div 中存在的类/数据动态创建复选框列表。本质上,这些复选框将过滤产品,以便单击复选框将在其 div 中显示包含该标签的产品,同时避免任何重复的复选框。
样本:
<div class="Shoes" data-size="Small" data-color="Black">
<h3>Nike</h3>
</div>
<div class="Belts" data-size="Medium" data-color="Black">
<h3>Belt</h3>
</div>
<div class="Shirt" data-size="Large" data-color="Blue">
<h3>Polo</h3>
</div>
<div class="Socks" data-size="Small" data-color="White">
<h3>Generic Socks</h3>
</div>
Run Code Online (Sandbox Code Playgroud)
预期输出类别类型
尺寸
颜色
每个复选框都需要能够隐藏/显示该项目。
到目前为止,我的代码来自搜索/以前的答案,但是它只创建了 1 个用于“类”的复选框类型,而不是创建多个复选框。
尝试
jQuery(function ($) {
function createCheckboxes($els, attr) {
var props = {};
$els.each(function () {
props[$(this).attr(attr)] = true;
});
return $.map(props, function (val, key) {
var $chk = $('<input />', {
type: 'checkbox',
value: key
})
return $('<label />', {
text: key
}).append($chk)
})
}
$('span').append(createCheckboxes($('div'), 'class'))
$('span').append(createCheckboxes($('div'), 'data-size'))
$('span').append(createCheckboxes($('div'), 'data-color'))
});
Run Code Online (Sandbox Code Playgroud)
演示:小提琴