When typing inside an input, autocomplete prompts will show on dropdown list
Choosing an option by click or ↑, ↓, Enter keys
Removing a selection by click x when enable multiple selection
var autocomplete =$('#el').autocomplete({
limit:20,
multiple:{
enable:true,
maxSize:10,
onExist:function(item){/* ... */},
onExceed:function(maxSize,item){/* ... */}
},
appender:{
el:'#someEl'
},
getData:function(value,callback){
// ...
callback(value, data);
}
});
$.fn.materialize_autocomplete
$.fn.materialize_autocomplete(options) [function]: Initialize an autocomplete widget and return an Autocomplete instance
Autocomplete options
cacheable [boolean]: Dropdown data cacheable or not, default: true
limit [number]: Max number of items show in dropdown, default: 10
multiple [object]: Configuration of multiple selection, seeing properties of multiple for more details
hidden [object]: Configuration of hidden input (used for storing ids joined by selections or id of a selection), seeing properties of hidden for more details
appender [object]: Configuration of appender (where to append selections when multiple selection is enabled), seeing properties of appender for more details
dropdown [object]: Configuration of dropdown, seeing properties of dropdown for more details
onSelect(item) [function]: Callback function after selecting an item in single selection mode
getData(value, callback) [function]: Function for getting dropdown list data, asynchronous called with a callback
value [string]: Input value,when input event triggered, getData will be called with input value
callback(value, data) [function]: Callback function
value [string]: Same as value above
data [array]: Data array,should be formatted as [{ 'id': '1', 'text': 'a' }, { 'id': '2', 'text': 'b'}]
ignoreCase [boolean]: Ignore case or not, default: true
throttling [boolean]: Throttling for getData function or not, default: true
Autocomplete
Constructor
new Autocomplete(el, options) [function]: Constructor
el [string|object]: DOM element on which the widget applys
autocomplete.$el [object]: JQuery object on which the widget applys
autocomplete.$wrapper [object]: Wrapper jQuery object,equal to autocomplete.$el.parent()
autocomplete.compiled [object]: Compiling functions for tagTemplate and itemTemplate
autocomplete.$dropdown [object]: JQuery object of dropdown
autocomplete.$appender [object]: JQuery object of appender
autocomplete.$hidden [object]: JQuery object of hidden input
autocomplete.resultCache [object]: Result cache object of getData when cacheable is true
autocomplete.value [array]: Value of widget, when multiple selection is enabled, autocomplete.value is ids joined by selections, otherswise autocomplete.value is id of a selection