@@ -20,7 +20,7 @@ var DEFAULT_SETTINGS = {
20
20
jsonContainer : null ,
21
21
contentType : "json" ,
22
22
23
- // Prepopulation settings
23
+ // Prepopulation settings
24
24
prePopulate : null ,
25
25
processPrePopulate : false ,
26
26
@@ -32,6 +32,7 @@ var DEFAULT_SETTINGS = {
32
32
animateDropdown : true ,
33
33
theme : null ,
34
34
zindex : 999 ,
35
+ resultsLimit : null ,
35
36
resultsFormatter : function ( item ) { return "<li>" + item [ this . propertyToSearch ] + "</li>" } ,
36
37
tokenFormatter : function ( item ) { return "<li><p>" + item [ this . propertyToSearch ] + "</p></li>" } ,
37
38
@@ -488,9 +489,9 @@ $.TokenList = function (input, url_or_data, settings) {
488
489
function insert_token ( item ) {
489
490
var $this_token = $ ( settings . tokenFormatter ( item ) ) ;
490
491
var readonly = item . readonly === true ? true : false ;
491
-
492
+
492
493
if ( readonly ) $this_token . addClass ( settings . classes . tokenReadOnly ) ;
493
-
494
+
494
495
$this_token . addClass ( settings . classes . token ) . insertBefore ( input_token ) ;
495
496
496
497
// The 'delete token' button
@@ -663,7 +664,7 @@ $.TokenList = function (input, url_or_data, settings) {
663
664
var token_values = $ . map ( saved_tokens , function ( el ) {
664
665
if ( typeof settings . tokenValue == 'function' )
665
666
return settings . tokenValue . call ( this , el ) ;
666
-
667
+
667
668
return el [ settings . tokenValue ] ;
668
669
} ) ;
669
670
hidden_input . val ( token_values . join ( settings . tokenDelimiter ) ) ;
@@ -732,6 +733,10 @@ $.TokenList = function (input, url_or_data, settings) {
732
733
} )
733
734
. hide ( ) ;
734
735
736
+ if ( settings . resultsLimit && results . length > settings . resultsLimit ) {
737
+ results = results . slice ( 0 , settings . resultsLimit ) ;
738
+ }
739
+
735
740
$ . each ( results , function ( index , value ) {
736
741
var this_li = settings . resultsFormatter ( value ) ;
737
742
@@ -884,7 +889,7 @@ $.TokenList = function (input, url_or_data, settings) {
884
889
// Bring browser focus to the specified object.
885
890
// Use of setTimeout is to get around an IE bug.
886
891
// (See, e.g., http://stackoverflow.com/questions/2600186/focus-doesnt-work-in-ie)
887
- //
892
+ //
888
893
// obj: a jQuery object to focus()
889
894
function focus_with_timeout ( obj ) {
890
895
setTimeout ( function ( ) { obj . focus ( ) ; } , 50 ) ;
0 commit comments