Commit 7d654265 authored by David Stutz's avatar David Stutz

Merge pull request #326 from asross/master

Allow onChange to trigger when calling `select` or `deselect` with one value.
parents a6a76454 66f65e03
...@@ -745,7 +745,7 @@ ...@@ -745,7 +745,7 @@
* *
* @param {Array} selectValues * @param {Array} selectValues
*/ */
select: function(selectValues) { select: function(selectValues, triggerOnChange) {
if(!$.isArray(selectValues)) { if(!$.isArray(selectValues)) {
selectValues = [selectValues]; selectValues = [selectValues];
} }
...@@ -771,6 +771,10 @@ ...@@ -771,6 +771,10 @@
} }
this.updateButtonText(); this.updateButtonText();
if (triggerOnChange && selectValues.length == 1) {
this.options.onChange($option, true);
}
}, },
/** /**
...@@ -788,7 +792,7 @@ ...@@ -788,7 +792,7 @@
* *
* @param {Array} deselectValues * @param {Array} deselectValues
*/ */
deselect: function(deselectValues) { deselect: function(deselectValues, triggerOnChange) {
if(!$.isArray(deselectValues)) { if(!$.isArray(deselectValues)) {
deselectValues = [deselectValues]; deselectValues = [deselectValues];
} }
...@@ -815,6 +819,10 @@ ...@@ -815,6 +819,10 @@
} }
this.updateButtonText(); this.updateButtonText();
if (triggerOnChange && deselectValues.length == 1) {
this.options.onChange($option, false);
}
}, },
/** /**
...@@ -1063,7 +1071,7 @@ ...@@ -1063,7 +1071,7 @@
} }
}; };
$.fn.multiselect = function(option, parameter) { $.fn.multiselect = function(option, parameter, extraOptions) {
return this.each(function() { return this.each(function() {
var data = $(this).data('multiselect'); var data = $(this).data('multiselect');
var options = typeof option === 'object' && option; var options = typeof option === 'object' && option;
...@@ -1076,7 +1084,7 @@ ...@@ -1076,7 +1084,7 @@
// Call multiselect method. // Call multiselect method.
if (typeof option === 'string') { if (typeof option === 'string') {
data[option](parameter); data[option](parameter, extraOptions);
if (option === 'destroy') { if (option === 'destroy') {
$(this).data('multiselect', false); $(this).data('multiselect', false);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment