@@ -119,6 +119,7 @@ <h3>Settings</h3>
119
119
< td >
120
120
< p > A function that gives you control over how suggestions are displayed. Default:</ p >
121
121
< pre class ="prettyprint " style ="white-space:pre-wrap "> < code > renderItem: function (item, search){
122
+ search = search.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
122
123
var re = new RegExp("(" + search.split(' ').join('|') + ")", "gi");
123
124
return '<div class="autocomplete-suggestion" data-val="' + item + '">' + item.replace(re, "<b>$1</b>") + '</div>';
124
125
}</ code > </ pre >
@@ -223,6 +224,7 @@ <h4>Advanced suggestions handling and custom layout</h4>
223
224
suggest(suggestions);
224
225
},
225
226
renderItem: function (item, search){
227
+ search = search.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
226
228
var re = new RegExp("(" + search.split(' ').join('|') + ")", "gi");
227
229
return '<div class="autocomplete-suggestion" data-langname="'+item[0]+'" data-lang="'+item[1]+'" data-val="'+search+'"><img src="img/'+item[1]+'.png"> '+item[0].replace(re, "<b>$1</b>")+'</div>';
228
230
},
@@ -287,6 +289,7 @@ <h4>Advanced suggestions handling and custom layout</h4>
287
289
suggest ( suggestions ) ;
288
290
} ,
289
291
renderItem : function ( item , search ) {
292
+ search = search . replace ( / [ - \/ \\ ^ $ * + ? . ( ) | [ \] { } ] / g, '\\$&' ) ;
290
293
var re = new RegExp ( "(" + search . split ( ' ' ) . join ( '|' ) + ")" , "gi" ) ;
291
294
return '<div class="autocomplete-suggestion" data-langname="' + item [ 0 ] + '" data-lang="' + item [ 1 ] + '" data-val="' + search + '"><img src="img/' + item [ 1 ] + '.png"> ' + item [ 0 ] . replace ( re , "<b>$1</b>" ) + '</div>' ;
292
295
} ,
0 commit comments