select2组件中所选元素的工具提示

时间:2014-09-05 13:36:01

标签: jquery tooltip jquery-select2

在我的项目中,我正在使用select2组件。对于我选择的元素,我添加了图标和说明。代码是这样的:

function format(profile_opt) {
        return profile_opt.text + "<br><span class=\"description_select2\"><i>" + $(profile_opt.element).attr('title') + "</i></span><br>" +
        ($(profile_opt.element).attr('start').length==0?'':('from: <b>' + $(profile_opt.element).attr('start') + '</b>')) + ($(profile_opt.element).attr('end').length==0?'':(' to: <b>' + $(profile_opt.element).attr('end') + '</b>')) + 
        " <a href=\"#\" onclick=javascript:showUrlInDialogWithOptionId(\"<%=request.getContextPath()%>/assignments_date_set.jsp\",\"" + profile_opt.id + "\",\"" + $(profile_opt.element).attr('start') + "\",\"" + $(profile_opt.element).attr('end') + "\")>" +
        "<img src=\"images/icons/small/grey/clock.png\" title=\"Set start and end assignment dates\" alt=\"Set start and end assignment dates\" class=\"clock\" id=\"clock\" width=\"20px\" height=\"20px\"></a>";
    }

    function format2(profile_opt){
        return profile_opt.text +"<br><span class=\"description_select2\"><i>" + $(profile_opt.element).attr('title') + "</i></span>";
    }

    $('#selected_profiles').select2({ allowSelectAllNone: true, closeOnSelect:false, width: '600px', placeholder: 'Click to select', 
        formatResult: format2,
        formatSelection: format,
        escapeMarkup: function(m) { return m; }
        });

我的问题是:如何将工具提示设置为格式选项元素的子字符串。我的意思是我只需要开始提供工具提示而不是整个语法与html里面。提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

select2构造函数中添加以下两个参数:

formatResult: format,
formatSelection: format

然后在select2构造函数之外定义format函数,如下所示:

function format(item) {
    var originalText = item.text;
    return "<div title ='" + originalText + "'>" + originalText + "</div>";
}

原帖是here