自动填写类别

时间:2013-11-24 17:45:36

标签: jquery mysql json

我正在尝试使用类别和Ajax实现Jquery自动完成,

我从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提供的示例中没有引号。

感谢您的帮助:)

1 个答案:

答案 0 :(得分:0)

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

改变这个:

$(".auto").autocomplete({

要:

$(".auto").catcomplete({

Demo