如何将自定义类添加到 ui-autocomplete div?我的页面上加载了多个自动完成小部件,并且它们的一些下拉菜单需要设置不同的样式,因此我不能只编辑 ui-autocomplete 类。我正在使用 jQuery UI 组合框代码 ( http://jqueryui.com/autocomplete/#combobox ),并且通过更改该代码,我想向创建的 ui-autocomplete div 添加一个类。
问问题
28543 次
5 回答
22
$("#auto").autocomplete({
source: ...
}).autocomplete( "widget" ).addClass( "your_custom_class" );
于 2014-09-29T13:44:54.443 回答
15
不好意思推迟了)。看看下面的代码。
$(function () {
$("#auto").autocomplete({
source: ['aa', 'bb', 'cc', 'dd']
}).data("ui-autocomplete")._renderItem = function (ul, item) {
ul.addClass('customClass'); //Ul custom class here
return $("<li></li>")
.addClass(item.customClass) //item based custom class to li here
.append("<a href='#'>" + item.label + "</a>")
.data("ui-autocomplete-item", item)
.appendTo(ul);
};
});
于 2013-10-23T18:43:11.397 回答
15
只需使用classes
参数:
$("#auto").autocomplete({
classes: {
"ui-autocomplete": "your-custom-class",
},
...
});
这意味着无论 jQuery UI 在哪里应用ui-autocomplete
该类,它也应该应用your-custom-class
。
这与任何 jQuery UI 小部件相关,而不仅仅是自动完成。请参阅文档。
于 2017-02-15T16:25:07.213 回答
1
使用此方法将自定义类添加到下拉框
_renderMenu: function( ul, items ) {
var that = this;
$.each( items, function( index, item ) {
that._renderItemData( ul, item );
});
$( ul ).find( "li:odd" ).addClass( "odd" );
}
于 2013-10-18T19:57:40.073 回答
-2
我设法通过遵循文档并将我的 jquery 版本至少更新到 v1.12.4(jquery 类选项需要)然后相应地更新 jquery-ui 版本(v1.12.1)来使其工作
于 2018-11-08T14:00:08.900 回答