Skip to content
Related Articles

Related Articles

How to add image before optgroup label using Bootstrap ?

Improve Article
Save Article
Like Article
  • Last Updated : 05 May, 2022

What is optgroup label?

It is an HTML tag that is used to group the options given in <select> tag. This combines the options in different groups having different labels.

Syntax: 

HTML




<optgroup label="text">
    <option value="One">One</option>
    <option value="Two">Two</option>
</optgroup>

If we need to add an image before optgroup label using bootstrap than we have to put “image” tag in label giving the source location of the image with the label name.

Example: The following example demonstrates the optgroup having image before label using Bootstrap.

HTML




<!DOCTYPE html>
<html lang="en">
<head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport"
        content="width=device-width, initial-scale=1,
        shrink-to-fit=no">
    <script src=
    </script>
    <script src=
    </script>
    <link rel="stylesheet" href=
    <script src=
    </script>
    <link rel="stylesheet" href=
    <script src=
    </script>
    <style>
        .bootstrap-select img {
            width: 16px;
        }
    </style>
</head>
<body>
    <select class="selectpicker">
        <optgroup label=
            "<img src='https://openmoji.org/data/color/svg/1F600.svg'> Numbers">
            <option value="1">One</option>
            <option value="2">Two</option>
            <option value="3">Three</option>
        </optgroup>
        <optgroup label=
            "<img src='https://openmoji.org/data/color/svg/1F923.svg'> Digits">
            <option value="Four">4</option>
            <option value="Five">5</option>
            <option value="Six">6</option>
        </optgroup>
    </select>
    <script>
        $('.selectpicker').on('shown.bs.select', function () {
            $('.bootstrap-select .dropdown-header').each(function () {
                if ((this.dataset.unescaped || '1') == '1') {
                    let element = $(this);
                    element.html(element.text());
                    element.attr('data-unescaped', '0');
                }
            })
        })
    </script>
</body>
</html>

Output:


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!