Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- How to filter your jquery autocomplete data while typing
- var aCleanData = ['aaa','aab','faa','fff','ffb','fgh','mmm','maa'];
- $('#my-input').autocomplete({
- source:aCleanData,
- minLength:2
- });
- var aCleanData = ['aaa','aab','faa','fff','ffb','fgh','mmm','maa'];
- $('#my-input').autocomplete({
- source: aCleanData,
- minLength: 2,
- search: function(oEvent, oUi) {
- // get current input value
- var sValue = $(oEvent.target).val();
- // init new search array
- var aSearch = [];
- // for each element in the main array ...
- $(aCleanData).each(function(iIndex, sElement) {
- // ... if element starts with input value ...
- if (sElement.substr(0, sValue.length) == sValue) {
- // ... add element
- aSearch.push(sElement);
- }
- });
- // change search array
- $(this).autocomplete('option', 'source', aSearch);
- }
- });
- $.ui.autocomplete.escapeRegex=function(){
- return '[^|s]' + $value.replace(/[-[]{}()*+?.,\^$|#s]/g, "\$&");
- };
- $.extend( $.ui.autocomplete, {
- escapeRegex: function( value ) {
- return value.replace(/[-[]{}()*+?.,\^$|#s]/g, "\$&");
- },
- filter: function(array, term) {
- var matcher = new RegExp( $.ui.autocomplete.escapeRegex(term), "i" );
- return $.grep( array, function(value) {
- return matcher.test( value.label || value.value || value );
- });
- }
- });
Add Comment
Please, Sign In to add comment