1
0
mirror of synced 2024-11-22 13:06:08 +03:00

Visibility of the search can be controlled

This commit is contained in:
Kevin Brown 2014-10-16 19:08:11 -04:00
parent 5b98f690c1
commit 5cf0dbf114
9 changed files with 138 additions and 28 deletions

View File

@ -253,15 +253,15 @@ define('select2/results',[
Results.prototype.bind = function (container, $container) {
var self = this;
this.on('results:all', function (data) {
container.on('results:all', function (params) {
self.clear();
self.append(data);
self.append(params.data);
self.setClasses();
});
this.on('results:append', function (data) {
self.append(data);
container.on('results:append', function (params) {
self.append(params.data);
self.setClasses();
});
@ -796,6 +796,7 @@ define('select2/dropdown/search',[
'</span>'
);
this.$searchContainer = $search;
this.$search = $search.find('input');
$rendered.prepend($search);
@ -804,6 +805,8 @@ define('select2/dropdown/search',[
};
Search.prototype.bind = function (decorated, container, $container) {
var self = this;
decorated.call(this, container, $container);
this.$search.on('keyup', function () {
@ -811,6 +814,22 @@ define('select2/dropdown/search',[
term: $(this).val()
});
});
container.on('results:all', function (params) {
if (params.query.term == null || params.query.term === '') {
var showSearch = self.showSearch(params);
if (showSearch) {
self.$searchContainer.show();
} else {
self.$searchContainer.hide();
}
}
});
};
Search.prototype.showSearch = function (params) {
return true;
};
return Search;
@ -1006,7 +1025,10 @@ define('select2/core',[
this.on('query', function (params) {
this.data.query(params, function (data) {
self.results.trigger('results:all', data);
self.trigger('results:all', {
data: data,
query: params
});
});
});

View File

@ -253,15 +253,15 @@ define('select2/results',[
Results.prototype.bind = function (container, $container) {
var self = this;
this.on('results:all', function (data) {
container.on('results:all', function (params) {
self.clear();
self.append(data);
self.append(params.data);
self.setClasses();
});
this.on('results:append', function (data) {
self.append(data);
container.on('results:append', function (params) {
self.append(params.data);
self.setClasses();
});
@ -796,6 +796,7 @@ define('select2/dropdown/search',[
'</span>'
);
this.$searchContainer = $search;
this.$search = $search.find('input');
$rendered.prepend($search);
@ -804,6 +805,8 @@ define('select2/dropdown/search',[
};
Search.prototype.bind = function (decorated, container, $container) {
var self = this;
decorated.call(this, container, $container);
this.$search.on('keyup', function () {
@ -811,6 +814,22 @@ define('select2/dropdown/search',[
term: $(this).val()
});
});
container.on('results:all', function (params) {
if (params.query.term == null || params.query.term === '') {
var showSearch = self.showSearch(params);
if (showSearch) {
self.$searchContainer.show();
} else {
self.$searchContainer.hide();
}
}
});
};
Search.prototype.showSearch = function (params) {
return true;
};
return Search;
@ -1006,7 +1025,10 @@ define('select2/core',[
this.on('query', function (params) {
this.data.query(params, function (data) {
self.results.trigger('results:all', data);
self.trigger('results:all', {
data: data,
query: params
});
});
});

View File

@ -9791,15 +9791,15 @@ define('select2/results',[
Results.prototype.bind = function (container, $container) {
var self = this;
this.on('results:all', function (data) {
container.on('results:all', function (params) {
self.clear();
self.append(data);
self.append(params.data);
self.setClasses();
});
this.on('results:append', function (data) {
self.append(data);
container.on('results:append', function (params) {
self.append(params.data);
self.setClasses();
});
@ -10334,6 +10334,7 @@ define('select2/dropdown/search',[
'</span>'
);
this.$searchContainer = $search;
this.$search = $search.find('input');
$rendered.prepend($search);
@ -10342,6 +10343,8 @@ define('select2/dropdown/search',[
};
Search.prototype.bind = function (decorated, container, $container) {
var self = this;
decorated.call(this, container, $container);
this.$search.on('keyup', function () {
@ -10349,6 +10352,22 @@ define('select2/dropdown/search',[
term: $(this).val()
});
});
container.on('results:all', function (params) {
if (params.query.term == null || params.query.term === '') {
var showSearch = self.showSearch(params);
if (showSearch) {
self.$searchContainer.show();
} else {
self.$searchContainer.hide();
}
}
});
};
Search.prototype.showSearch = function (params) {
return true;
};
return Search;
@ -10544,7 +10563,10 @@ define('select2/core',[
this.on('query', function (params) {
this.data.query(params, function (data) {
self.results.trigger('results:all', data);
self.trigger('results:all', {
data: data,
query: params
});
});
});

File diff suppressed because one or more lines are too long

32
dist/js/select2.js vendored
View File

@ -682,15 +682,15 @@ define('select2/results',[
Results.prototype.bind = function (container, $container) {
var self = this;
this.on('results:all', function (data) {
container.on('results:all', function (params) {
self.clear();
self.append(data);
self.append(params.data);
self.setClasses();
});
this.on('results:append', function (data) {
self.append(data);
container.on('results:append', function (params) {
self.append(params.data);
self.setClasses();
});
@ -1225,6 +1225,7 @@ define('select2/dropdown/search',[
'</span>'
);
this.$searchContainer = $search;
this.$search = $search.find('input');
$rendered.prepend($search);
@ -1233,6 +1234,8 @@ define('select2/dropdown/search',[
};
Search.prototype.bind = function (decorated, container, $container) {
var self = this;
decorated.call(this, container, $container);
this.$search.on('keyup', function () {
@ -1240,6 +1243,22 @@ define('select2/dropdown/search',[
term: $(this).val()
});
});
container.on('results:all', function (params) {
if (params.query.term == null || params.query.term === '') {
var showSearch = self.showSearch(params);
if (showSearch) {
self.$searchContainer.show();
} else {
self.$searchContainer.hide();
}
}
});
};
Search.prototype.showSearch = function (params) {
return true;
};
return Search;
@ -1435,7 +1454,10 @@ define('select2/core',[
this.on('query', function (params) {
this.data.query(params, function (data) {
self.results.trigger('results:all', data);
self.trigger('results:all', {
data: data,
query: params
});
});
});

File diff suppressed because one or more lines are too long

View File

@ -102,7 +102,10 @@ define([
this.on('query', function (params) {
this.data.query(params, function (data) {
self.results.trigger('results:all', data);
self.trigger('results:all', {
data: data,
query: params
});
});
});

View File

@ -12,6 +12,7 @@ define([
'</span>'
);
this.$searchContainer = $search;
this.$search = $search.find('input');
$rendered.prepend($search);
@ -20,6 +21,8 @@ define([
};
Search.prototype.bind = function (decorated, container, $container) {
var self = this;
decorated.call(this, container, $container);
this.$search.on('keyup', function () {
@ -27,6 +30,22 @@ define([
term: $(this).val()
});
});
container.on('results:all', function (params) {
if (params.query.term == null || params.query.term === '') {
var showSearch = self.showSearch(params);
if (showSearch) {
self.$searchContainer.show();
} else {
self.$searchContainer.hide();
}
}
});
};
Search.prototype.showSearch = function (params) {
return true;
};
return Search;

View File

@ -114,15 +114,15 @@ define([
Results.prototype.bind = function (container, $container) {
var self = this;
this.on('results:all', function (data) {
container.on('results:all', function (params) {
self.clear();
self.append(data);
self.append(params.data);
self.setClasses();
});
this.on('results:append', function (data) {
self.append(data);
container.on('results:append', function (params) {
self.append(params.data);
self.setClasses();
});