Parcourir la source

Added `select2-clearing` event
that allows clearing selection to be canceled.

Duncan Smart il y a 11 ans
Parent
commit
edc0d86fd2
1 fichiers modifiés avec 5 ajouts et 0 suppressions
  1. 5 0
      select2.js

+ 5 - 0
select2.js

@@ -2044,6 +2044,11 @@ the specific language governing permissions and limitations under the Apache Lic
         clear: function(triggerChange) {
             var data=this.selection.data("select2-data");
             if (data) { // guard against queued quick consecutive clicks
+                var evt = $.Event("select2-clearing");
+                this.opts.element.trigger(evt);
+                if (evt.isDefaultPrevented()) {
+                    return;
+                }
                 var placeholderOption = this.getPlaceholderOption();
                 this.opts.element.val(placeholderOption ? placeholderOption.val() : "");
                 this.selection.find(".select2-chosen").empty();