allow '0' vals to be set. fixes #646
This commit is contained in:
parent
32249cc7f0
commit
c66a91a9bb
15
select2.js
15
select2.js
@ -741,6 +741,13 @@ the specific language governing permissions and limitations under the Apache Lic
|
|||||||
opts.id = function (e) { return e[idKey]; };
|
opts.id = function (e) { return e[idKey]; };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($.isArray(opts.element.data("select2Tags"))) {
|
||||||
|
if ("tags" in opts) {
|
||||||
|
throw "tags specified as both an attribute 'data-select2-tags' and in options of Select2 " + opts.element.attr("id");
|
||||||
|
}
|
||||||
|
opts.tags=opts.element.attr("data-select2-tags");
|
||||||
|
}
|
||||||
|
|
||||||
if (select) {
|
if (select) {
|
||||||
opts.query = this.bind(function (query) {
|
opts.query = this.bind(function (query) {
|
||||||
var data = { results: [], more: false },
|
var data = { results: [], more: false },
|
||||||
@ -781,6 +788,7 @@ the specific language governing permissions and limitations under the Apache Lic
|
|||||||
opts.formatResultCssClass = function(data) { return data.css; }
|
opts.formatResultCssClass = function(data) { return data.css; }
|
||||||
} else {
|
} else {
|
||||||
if (!("query" in opts)) {
|
if (!("query" in opts)) {
|
||||||
|
|
||||||
if ("ajax" in opts) {
|
if ("ajax" in opts) {
|
||||||
ajaxUrl = opts.element.data("ajax-url");
|
ajaxUrl = opts.element.data("ajax-url");
|
||||||
if (ajaxUrl && ajaxUrl.length > 0) {
|
if (ajaxUrl && ajaxUrl.length > 0) {
|
||||||
@ -1789,8 +1797,8 @@ the specific language governing permissions and limitations under the Apache Lic
|
|||||||
if (this.opts.initSelection === undefined) {
|
if (this.opts.initSelection === undefined) {
|
||||||
throw new Error("cannot call val() if initSelection() is not defined");
|
throw new Error("cannot call val() if initSelection() is not defined");
|
||||||
}
|
}
|
||||||
// val is an id. !val is true for [undefined,null,'']
|
// val is an id. !val is true for [undefined,null,'',0] - 0 is legal
|
||||||
if (!val) {
|
if (!val && val !== 0) {
|
||||||
this.clear();
|
this.clear();
|
||||||
if (triggerChange) {
|
if (triggerChange) {
|
||||||
this.triggerChange();
|
this.triggerChange();
|
||||||
@ -2326,7 +2334,8 @@ the specific language governing permissions and limitations under the Apache Lic
|
|||||||
triggerChange = arguments[1];
|
triggerChange = arguments[1];
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!val) {
|
// val is an id. !val is true for [undefined,null,'',0] - 0 is legal
|
||||||
|
if (!val && val !== 0) {
|
||||||
this.opts.element.val("");
|
this.opts.element.val("");
|
||||||
this.updateSelection([]);
|
this.updateSelection([]);
|
||||||
this.clearSearch();
|
this.clearSearch();
|
||||||
|
Loading…
Reference in New Issue
Block a user