在 select2 中添加带有文本的图像

Add images with text in select2

本文关键字:文本 图像 select2 添加      更新时间:2023-09-26

好吧,我正在创建一个选择标签下拉列表,其中包含国家名称作为选项,我想在其中添加受人尊敬的国家/地区标志:我使用了这个 HTML

    <div class="form-group" id="abc">
        <label class="col-md-2 control-label">Language: </label>
    <div class="col-md-6">
        <select class="select2me form-control" name = "locale" id="select_lang">
            @foreach($languages as $lang)
                <option value="{{$lang->locale}}" @if($lang->locale == $company->locale) selected="selected" @endif>{{$lang->language}}</option>
            @endforeach
        </select>
    </div>

使用的 JAVASCRIPT:

    jQuery(document).ready(function() {
          $.fn.select2.defaults.set("theme", "bootstrap");
          $('.select2me').select2({
             placeholder: "Select",
             width: '100%',
             allowClear: false
           });
     function format(state) {
                if (!state.id) return state.text; // optgroup
                return "<img class='flag' src='" + MyFILEPATH() + "flags/" + state.id.toLowerCase() + ".png'/>&nbsp;&nbsp;" + state.text;
            }
            $("#select_lang").select2({
                placeholder: "Select a Country",
                allowClear: true,
                formatResult: format,
                formatSelection: format,
                escapeMarkup: function (m) {
                    return m;
                }
            });
    });

我试过这个,这工作正常:

$("#select_lang").select2({
    placeholder: "Select a Country",
    allowClear: true,
    templateResult: format,
    templateSelection: format,
    escapeMarkup: function (m) {
    return m;
  }
});
请尝试使用模板结果和

模板选择而不是格式结果和格式选择