var GenerateAutoComplete = function (elementID, data, clear) { /* ------ Regular Typeahead autocomplete -------- */ //var substringMatcher = function (strs) { // return function findMatches(q, cb) { // var matches, substrRegex; // // an array that will be populated with substring matches // matches = []; // // regex used to determine if a string contains the substring `q` // substrRegex = new RegExp(q, 'i'); // // iterate through the pool of strings and for any string that // // contains the substring `q`, add it to the `matches` array // $.each(strs, function (i, str) { // if (substrRegex.test(str)) { // // the typeahead jQuery plugin expects suggestions to a // // JavaScript object, refer to typeahead docs for more info // matches.push({ value: str }); // } // }); // cb(matches); // }; //}; //$(elementID).typeahead({ // hint: true, // highlight: true, // minLength: 1 //}, //{ // name: 'data', // displayKey: 'value', // source: substringMatcher(data) //}); /*--------- Bloodhound Search Engine-----------*/ clear = typeof clear === "undefined" ? true : clear; $(elementID).typeahead('destroy'); if (clear) { $(elementID).val(''); } // constructs the suggestion engine var bloodHoundData = new Bloodhound({ datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'), queryTokenizer: Bloodhound.tokenizers.whitespace, local: $.map(data, function (ddlElement) { return { value: ddlElement }; }), limit: 10 }); // kicks off the loading/processing of `local` and `prefetch` bloodHoundData.initialize(); $(elementID).typeahead({ hint: true, highlight: true, minLength: 1 }, { name: 'data', displayKey: 'value', // `ttAdapter` wraps the suggestion engine in an adapter that // is compatible with the typeahead jQuery plugin source: bloodHoundData.ttAdapter() }); }
Keeping track of interesting places I put my feet on in the software development world.
Search This Blog
Thursday, May 7, 2015
Use of typehead.js (autocomplete)
usage: GenerateAutoComplete(selectors.BankName, bankNamesArray);
Labels:
Autocomplete,
Typeahead
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment