我的JSP页面及其选项中有一个select2下拉列表。每当select2下拉列表的选项发生更改时,我想为它添加一个标题。我试着给它加上标题。但当我将鼠标悬停在select2框上时,标题不会出现。但是title属性会附加到select2下拉列表中。请帮我解决这个问题。
<select id="daySelect" title="select your day">
<option val="0">Sunday</option>
<option val="1">Monday</option>
<option val="2">Tuesday</option>
<option val="3">Wednesday</option>
<option val="4">Thursday</option>
<option val="5">Friday</option>
<option val="6">Saturday</option>
</select>
最佳答案
标题未复制到用于在中显示选项的范围
选择2版本3.5*
但是,您可以更改select2.js,如下所示:-
populateResults: function(container, results, query) {
var populate, id=this.opts.id, liveRegion=this.liveRegion;
populate=function(results, container, depth) {
var i, l, result, selectable, disabled, compound, node, label, innerContainer, formatted;
results = opts.sortResults(results, container, query);
// collect the created nodes for bulk append
var nodes = [];
for (i = 0, l = results.length; i < l; i = i + 1) {
result=results[i];
disabled = (result.disabled === true);
selectable = (!disabled) && (id(result) !== undefined);
compound=result.children && result.children.length > 0;
node=$("<li></li>");
node.addClass("select2-results-dept-"+depth);
node.addClass("select2-result");
node.addClass(selectable ? "select2-result-selectable" : "select2-result-unselectable");
if (disabled) { node.addClass("select2-disabled"); }
if (compound) { node.addClass("select2-result-with-children"); }
node.addClass(self.opts.formatResultCssClass(result));
node.attr("role", "presentation");
label=$(document.createElement("div"));
label.addClass("select2-result-label");
label.attr("id", "select2-result-label-" + nextUid());
label.attr("role", "option");
if(result.element.length > 0 && result.element[0].title != undefined)
label.attr("title", result.element[0].title || '');
formatted=opts.formatResult(result, label, query, self.opts.escapeMarkup);
if (formatted!==undefined) {
label.html(formatted);
node.append(label);
}
if (compound) {
innerContainer=$("<ul></ul>");
innerContainer.addClass("select2-result-sub");
populate(result.children, innerContainer, depth+1);
node.append(innerContainer);
}
node.data("select2-data", result);
nodes.push(node[0]);
}
// bulk append the created nodes
container.append(nodes);
liveRegion.text(opts.formatMatches(results.length));
};
populate(results, container, 0);
}
这一次换行正是我们需要的:-
if(result.element != undefined && result.element.length > 0 && result.element[0].title != undefined)
label.attr("title", result.element[0].title || '');