首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Select2不会格式化项目

Select2不会格式化项目
EN

Stack Overflow用户
提问于 2015-05-29 00:23:31
回答 2查看 2.1K关注 0票数 1

我不知道它是否与新的库等冲突,但我不能格式化选择的项目。它们不会以斜体和粗体格式显示。

http://jsfiddle.net/fcb960xh/2/

代码语言:javascript
复制
<select style="width: 300px">
  <optgroup label="Alaskan/Hawaiian Time Zone">
    <option value="AK">Alaska</option>
    <option value="HI">Hawaii</option>
  </optgroup>
  <optgroup label="Pacific Time Zone">
    <option value="CA">California</option>
    <option value="NV">Nevada</option>
    <option value="OR">Oregon</option>
    <option value="WA">Washington</option>
  </optgroup>
</select>

js

代码语言:javascript
复制
$(document).ready(function() {
    $('select').select2({
      // Specify format function for dropdown item
      formatResult: formatResult,
      // Specify format function for selected item
      formatSelection: formatSelection
    });
});

function formatResult(item) {
    if(!item.id) {
       return item.text;
    }
    // return item template
    return '<i style="color:#ff0000">' + item.text + '</i>';
}

function formatSelection(item) {
    // return selection template
    return '<b>' + item.text + '</b>';
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-05-29 00:39:33

您正在使用select2 4.0.0。事情已经和以前的版本不同了。

来自select2 4.0.0公告

Select2以前提供了多个选项来格式化结果列表和选择的选项,通常被称为“格式化者”,使用formatSelection和formatResult选项。由于“格式化者”也用于本地化(这也发生了变化),因此它们被重命名为templateSelection和templateResult,它们的签名也发生了变化。

您应该使用templateResulttemplateSelection,而不是formatResultformatSelection。您还应该返回一个jQuery对象。这是更新的小提琴

票数 3
EN

Stack Overflow用户

发布于 2015-05-29 00:45:34

我还没有使用select2,但是一种快速的方法是向现有的css类添加样式

代码语言:javascript
复制
.select2-results__group{
    font-style: italic
}

看一看:https://jsfiddle.net/fcb960xh/9/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30519209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档