catcomplete的文档

Joh*_*lta 4 jquery-ui

我只是试图找到catcomplete的文档.我需要手册来了解如何使用_renderItem.我找到了这个http://jqueryui.com/autocomplete/#categories但似乎没有提到这只是_renderMenu的例子

    _renderMenu: function( ul, items ) {
        var that = this,
            currentCategory = "";
        $.each( items, function( index, item ) {
            if ( item.category != currentCategory ) {
                ul.append( "<li class='ui-autocomplete-category'>" + item.category + "</li>" );
                currentCategory = item.category;
            }
            that._renderItemData( ul, item );
        });
    }
Run Code Online (Sandbox Code Playgroud)

Ell*_*ott 9

catcomplete只是一个例子,不幸的是它不是jQuery UI的一部分,所以没有_renderItem或的文档renderMenu.可以将其视为jQuery源代码的一部分.但是,可以从源代码中非常容易地再现该效果.

要使用catcomplete,我们需要简单地确保传递a labelcategory值,catcomplete如下所示:

var data = [
    { label: "anders", category: "" },
    { label: "andreas", category: "" },
    { label: "antal", category: "" },
    { label: "annhhx10", category: "Products"},
    { label: "annk K12", category: "Products" },
    { label: "annttop C13", category: "Products" },
    { label: "anders andersson", category: "People" },
    { label: "andreas andersson", category: "People" },
    { label: "andreas johnson", category: "People" }
];
Run Code Online (Sandbox Code Playgroud)

具有空白字符串作为类别的项目将不会被放入类别中,并且与标准自动完成一样保留.给定类别的人将在该类别下进行子菜单.

这里的小提琴(jQuery示例)


要为每个项添加一个类,您只需将其附加.addClass(item.category)catcomplete窗口小部件中最后一行代码的末尾:

that._renderItemData( ul, item ).addClass(item.category);
Run Code Online (Sandbox Code Playgroud)

这里更新了小提琴