对不起,我不太懂英语。我有一个启用了内容吸收的selectpicker,并且需要为每个下拉菜单项启用内容吸收,这是一个弹出窗口。问题是,当点击切换按钮时,弹出窗口会隐藏与该项关联的下拉菜单-selectpicker本身的下拉列表。This是我正在使用的Codepen中的一个示例代码。为了简单起见,在这个示例中我使用setTimeout。请帮助理解。第一个
vsmadaxz1#
请尝试以下代码
/* push data from request */ function pushDataToDropdown() { let select = $('#sortByTag'); let parentMarkupObj = { 'markup': `<option>1212123</option>` }; select.append(parentMarkupObj.markup); } /* add popover to select items */ function addOptionsDropdownToTags() { let allTagInFilter = $('.dropdown-menu.inner li'); /* непосредственно вставка дропдауна для каждого пункта селекта */ allTagInFilter.append('<button type="button" class="custom-popover" data-toggle="popover" title="Popover title" data-content="Popover">Popover btn</button>'); } window.addEventListener('DOMContentLoaded', (event) => { pushDataToDropdown(); setTimeout(function() { $('select').selectpicker('refresh'); }, 500) setTimeout(function() { $(document).on('click', '.bootstrap-select', function (e) { e.stopPropagation(); }); }, 650) setTimeout(addOptionsDropdownToTags, 800); });
将此代码$(document).on('click', 'someyourContainer .dropdown-menu', function (e) {更改为$(document).on('click', '.bootstrap-select', function (e) {
$(document).on('click', 'someyourContainer .dropdown-menu', function (e) {
$(document).on('click', '.bootstrap-select', function (e) {
1条答案
按热度按时间vsmadaxz1#
请尝试以下代码
将此代码
$(document).on('click', 'someyourContainer .dropdown-menu', function (e) {
更改为$(document).on('click', '.bootstrap-select', function (e) {