此处我在PrimeFaces 5.1中使用p:autoComplete
标记,但我无法从建议列表中删除第一个突出显示/选定的项目。我怎么能删除这个?
答案 0 :(得分:6)
由于您的“问题”来自此特定line
,
firstItem.addClass('ui-state-highlight');
这里发生的是当建议准备好显示脚本时突出显示列表的第一项,因此在您的情况下,您只需“取消突出显示”该项目。
我创建了一个小功能,可以在你拥有的每个自动完成功能上执行此操作,您可以在document.ready
或您认为合适的地方调用它:
function removeHighlightedFirstItem() {
var oldAutoCompleteShowSuggestions = PrimeFaces.widget.AutoComplete.prototype.showSuggestions;
PrimeFaces.widget.AutoComplete.prototype.showSuggestions = function(query) {
//calling original ShowSuggestions
oldAutoCompleteShowSuggestions.apply(this, [query]);
//after ShowSuggestions
//remove first item highlight
var firstItem = this.items.eq(0);
firstItem.removeClass('ui-state-highlight');
}
}
结果如下:
注意:通过将autoHighlight = "false"
属性添加到组件,您要求的功能可用于5.1.5,5.0.14和5.2。