【问题标题】:Autocomplete with categories自动完成类别
【发布时间】:2013-11-24 17:45:36
【问题描述】:

我正在尝试使用类别和 Ajax 实现 Jquery Autocomplete,

我有以下从Jquery UI website 获得的javascript:

  <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 type="text/javascript">
$(function() {

    //autocomplete
    $(".auto").autocomplete({
        source: "autocomplete.php",
        minLength: 1,

    });             
});
</script>

文件autocomplete.php回显一个Json数组,如下所示:

[
{"label":"Sandy W","category":"Artist"},
{"label":"Shlomi Aber & Itamar Sagi","category":"Artist"},
{"label":"sad","category":"Keyword"}
]

但是,jquery 似乎无法识别类别。当数组中的值显示在自动完成列表中时,它们不会根据它们的类别进行分隔。

可以是 labelcategories 周围的 Json 中的引号吗?我注意到在 jquery labelcategories 提供的示例中,它们周围没有引号。

感谢您的帮助:)

【问题讨论】:

    标签: jquery mysql json


    【解决方案1】:

    由于您要查找分类搜索结果,因此您需要使用 catcomplete,它会显示子类别,而 autocomplete 不会。

    改变这个:

    $(".auto").autocomplete({
    

    收件人:

    $(".auto").catcomplete({
    

    Demo

    【讨论】:

    • 我怎么能错过...谢谢! :)
    猜你喜欢
    • 2015-03-13
    • 2013-01-18
    • 2013-02-24
    • 2012-04-09
    • 1970-01-01
    • 2012-11-10
    • 2011-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多