Select List
A Web Component to create a list with selectable items. Combine it an input element to create a search results UI.
Demo
Take a look at the browser console. When you select an item, an event listener will log it.
Example
Live demo
Code
<input type="search" class="form-control mb-3" id="myinput" />
<bl-select-list class="list-group" id="myselectlist" for="myinput">
<button class="list-group-item list-group-item-action">Item 1</button>
<button class="list-group-item list-group-item-action">Item 2</button>
<button class="list-group-item list-group-item-action">Item 3</button>
</bl-select-list>
<script>
document.getElementById("myselectlist").addEventListener("bl-select", ({ detail }) => {
console.log("Selected: ", detail)
})
</script> Dropdown menu
Together with popover and CSS Anchoring, it’s also useful to create a dropdown list.
Example
Live demo
Code
<button type="button" class="blue-anchor blue-menu-item btn" id="anchor-1" popovertarget="popover-1">
<span class="blue-menu-item-label">Parent</span>
</button>
<bl-select-list id="popover-1" for="anchor-1" popover class="blue-anchored blue-anchored-fallback border rounded-4">
<button type="button" class="blue-menu-item btn d-flex w-100">
<span class="blue-menu-item-icon" aria-hidden="true">🌍</span>
<span class="blue-menu-item-label">Child</span>
</button>
<button type="button" class="blue-menu-item btn d-flex w-100">
<span class="blue-menu-item-icon" aria-hidden="true">🌑</span>
<span class="blue-menu-item-label">Child 2</span>
</button>
</bl-select-list> React combo box demo
Example
Live demo
Grab the code
When you don't use the entire Blue Web library, you can also just copy and paste the required code into your own project.
-
Copy and paste the following code into your project. Source: @/src/js/select-list.ts