首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何定制jquery ui自动完成?

问如何定制jquery ui自动完成?
EN

Stack Overflow用户
提问于 2013-05-12 04:27:40
回答 1查看 640关注 0票数 1

我正在使用jquery ui自动完成,对于出现在下拉列表中的术语列表,是否有方法可以对这些术语进行分类?基本上我想要的是:在下拉菜单中,根据术语来自哪个类别,它的背景颜色将是某种颜色。就像你定义一个字典一样:

代码语言:javascript
复制
var dictionary = {"apple":"red", "banana":"yellow"};

然后,将其传递给jquery ui自动完成初始化器,下拉列表将包含具有红色背景颜色的术语apple和具有黄色背景颜色的banana。

这有可能做到吗?

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-05-12 04:35:54

这是完全可能的,请看一下这个Jquery-ui-Autocomplete Catagories

现在的基本要点是:

代码语言:javascript
复制
<style>
    .ui-autocomplete-category {
    font-weight: bold;
    padding: .2em .4em;
    margin: .8em 0 .2em;
    line-height: 1.5;
    }
</style>
<script>
  $.widget( "custom.catcomplete", $.ui.autocomplete, {
       _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 );
             });
       }
   });
</script>
<script>
   $(function() {
   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" }
  ];

   $( "#search" ).catcomplete({
     delay: 0,
     source: data
    });
  });
</script>
</head>
<body> 
   <label for="search">Search: </label>
   <input id="search" />
</body>

现在你想要做的是改变.ui-autocomplete-catagory CSS类来获得一个类别的一般概念,为了让特定的类别有不同的颜色,你需要添加他们自己的CSS类。您可以使用jQuery来完成此操作,或者在上面第一个脚本中的ul.append()中添加每个类别时具体添加它们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16501425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档