我创建了一个多选下拉列表,用户通过单击每个选项的复选框来选择选项。它仅适用于一个这样的下拉菜单,但我需要在一页上有很多很多这样的下拉菜单。有人知道如何更改代码来实现这一目标吗?
这是此https://codepen.io/chaser7016/pen/yLNGWYb的代码笔。下面,我还添加了在 codepen 中看到的 html/css/jquery。
$('.dropdown-container')
.on('click', '.dropdown-button', function() {
$(this).siblings('.dropdown-list').toggle();
})
.on('input', '.dropdown-search', function() {
var target = $(this);
var dropdownList = target.closest('.dropdown-list');
var search = target.val().toLowerCase();
if (!search) {
dropdownList.find('li').show();
return false;
}
dropdownList.find('li').each(function() {
var text = $(this).text().toLowerCase();
var match = text.indexOf(search) > -1;
$(this).toggle(match);
});
})
$('.dropdown-list input[type="checkbox"]').on('click', function () {
var title = $(this).closest('.dropdown-list').find('input[type="checkbox"]').val(),
title = $(this).val() + ",";
if ($(this).is(':checked')) {
var html = '<span title="' + title + '">' + title + '</span>';
$('.quantity').append(html);
$(".hida").hide();
}
else {
$('span[title="' + title + '"]').remove();
var ret = $(".hida");
$('.dropdown dt a').append(ret);
}
});
.dropdown-button {
width: 100%;
background: white;
cursor: pointer;
padding: 19px;
box-sizing: border-box;
border: 1px solid;
}
.dropdown-label, .dropdown-quantity {
float: left;
font-family: 'Ubuntu', sans-serif;
}
.dropdown-quantity {
margin-left: 4px;
}
input[type="search"] {
padding: 5px;
width: 100%;
margin: 3px 0 8px;
}
蓝山帝景
相关分类