diff --git a/src/common.js b/src/common.js
index 40c4cb68a..7023b53c1 100644
--- a/src/common.js
+++ b/src/common.js
@@ -135,7 +135,7 @@ var uis = angular.module('ui.select', [])
*/
.filter('highlight', function() {
function escapeRegexp(queryToEscape) {
- return queryToEscape.replace(/([.?*+^$[\]\\(){}|-])/g, '\\$1');
+ return ('' + queryToEscape).replace(/([.?*+^$[\]\\(){}|-])/g, '\\$1');
}
return function(matchItem, query) {
diff --git a/test/select.spec.js b/test/select.spec.js
index 1cbd4f3cb..f2dd7de2e 100644
--- a/test/select.spec.js
+++ b/test/select.spec.js
@@ -2328,6 +2328,13 @@ describe('ui-select tests', function() {
expect(highlight(item, query)).toBe('2015');
});
+
+ it('properly works with numeric queries', function() {
+ var query = 15;
+ var item = 2015;
+
+ expect(highlight(item, query)).toBe('2015');
+ });
});
});