选择带有标志的国家/地区下拉列表2

Select2 drop-down for countries, with flags

本文关键字:地区 下拉列表 国家 标志 选择      更新时间:2023-09-26

有人为Select2提供了一个易于使用的带有国家/地区标志的国家下拉列表示例吗?我即将根据这个建议实施一个,但我宁愿避免重新发明轮子。

我正在处理一个类似的问题,下面是我如何解决它。

(function($) {
    $(function() {
        var isoCountries = [
            { id: 'AF', text: 'Afghanistan'},
            ...
        ];
        //Assuming you have a select element with name country
        // e.g. <select name="name"></select>
        $("[name='country']").select2({
            placeholder: "Select a country",
            data: isoCountries
        });
    });
})(jQuery);

我也做了一个要点,下面是演示。

  • 演示1
  • 带有基于select2官方DOC的标志的演示2

我的做法:

<div class="form-group">
    <label class="control-label">Destination</label>
    <input type="text" name="cdCountry" class="form-control" required />
</div>
<script>
    $("[name='cdCountry']").select2({
        placeholder: "Select a country",
        formatResult: function (country) {
            return $(
              "<span><i class='"flag flag-" + country.id.toLowerCase() + "'"></i> " + country.text + "</span>"
            );;
        },
        data: yourDataSource
    });
</script>

以及使用css库(css和sprite)https://www.flag-sprites.com/

官方DOC

查看以下链接。

http://www.marghoobsuleman.com/countries-dropdown-flagshttp://vincentlamanna.com/BootstrapFormHelpers/country.html

<head>
    <link href="select2.css" rel="stylesheet"/>
    <script src="select2.js"></script>
    <script>
        $(document).ready(function() { $("#e1").select2(); });
    </script>
</head>
<body>
    <select id="e1">
        <option value="1">Albania<img src="Albania.jpg"></option>
        ...
        <option value="2">Germany<img src="Germany.jpg"></option>
    </select>
</body>