Skip to content

Instantly share code, notes, and snippets.

@Shadow6363
Created May 17, 2011 13:07
Show Gist options
  • Save Shadow6363/976429 to your computer and use it in GitHub Desktop.
Save Shadow6363/976429 to your computer and use it in GitHub Desktop.
Autocomplete JS
$(document).ready(function() {
$('#LetterStaffer').autocomplete({
delay: 0,
minLength : 1,
source : function(request, response) {
var matcher = new RegExp('^' + $.ui.autocomplete.escapeRegex(request.term), 'i');
response(grep($('#LetterStaffList option'), function(value) {
return matcher.test(value);
}));
},
selectFirst: true,
focus: function (event, ui) {
return false;
},
select: function (event, ui) {
$('#LetterStaffer').val(ui.item.value);
return false;
}
});
$('.ui-autocomplete-input').live('autocompleteopen', function() {
var autocomplete = $(this).data('autocomplete'),
menu = autocomplete.menu;
if (!autocomplete.options.selectFirst) {
return;
}
menu.activate($.Event({ type: 'mouseenter' }), menu.element.children().first());
});
});
function grep(elems, callback) {
var ret = [], retVal;
for (var i = 0, length = elems.length; i < length; i++) {
retVal = !!callback($(elems[i]).text());
if (retVal) { ret.push($(elems[i]).text()); }
} return ret;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment