1/* 2 * jQuery UI Autocomplete HTML Extension 3 * 4 * Copyright 2010, Scott González (http://scottgonzalez.com) 5 * Dual licensed under the MIT or GPL Version 2 licenses. 6 * 7 * http://github.com/scottgonzalez/jquery-ui-extensions 8 */ 9(function( $ ) { 10 11var proto = $.ui.autocomplete.prototype, 12 initSource = proto._initSource; 13 14function filter( array, term ) { 15 var matcher = new RegExp( $.ui.autocomplete.escapeRegex(term), "i" ); 16 return $.grep( array, function(value) { 17 return matcher.test( $( "<div>" ).html( value.label || value.value || value ).text() ); 18 }); 19} 20 21$.extend( proto, { 22 _initSource: function() { 23 if ( this.options.html && $.isArray(this.options.source) ) { 24 this.source = function( request, response ) { 25 response( filter( this.options.source, request.term ) ); 26 }; 27 } else { 28 initSource.call( this ); 29 } 30 }, 31 32 _renderItem: function( ul, item) { 33 return $( "<li></li>" ) 34 .data( "item.autocomplete", item ) 35 .append( $( "<a></a>" )[ this.options.html ? "html" : "text" ]( item.label ) ) 36 .appendTo( ul ); 37 } 38}); 39 40})( jQuery );
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.