Jquery autocomplete – 自定义html的结果列表

前端之家收集整理的这篇文章主要介绍了Jquery autocomplete – 自定义html的结果列表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我指的是这个插件http://jqueryui.com/demos/autocomplete/

所以结果的原始结构是

<ul class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all">
  <li class="ui-menu-item">
    <a class="ui-corner-all">item 1</a>
  </li>
  <li class="ui-menu-item">
    <a class="ui-corner-all">item 2</a>
  </li>
  <li class="ui-menu-item">
    <a class="ui-corner-all">item 3</a>
  </li>
</ul>

我需要使内部的链接看起来像这样:

<a class="myclass" customattribute="something"> The item </a>

请不要告诉我唯一的解决方案来编辑​​插件,因为我不希望在网站上的所有自动完成相同的格式。

解决方法

您需要替换_renderItem方法(对于有问题的自动完成):
$("selector").autocomplete({ ... })
   .data( "autocomplete" )._renderItem = function( ul,item ) {
        return $( "<li></li>" )
            .data( "item.autocomplete",item )
            .append( "<a class='myclass' customattribute='" + item.customattribute + "'>" + item.label + "</a>" )
            .appendTo( ul );
   };

(假设您的源中的项目具有名为customattribute的属性)

如下例所示:http://jqueryui.com/demos/autocomplete/#custom-data

猜你在找的jQuery相关文章