Browse Source

Fix #1510: Lock browse button correctly when disable method is called

Kartik Visweswaran 5 years ago
parent
commit
6093357de8
3 changed files with 11 additions and 9 deletions
  1. 1 0
      CHANGE.md
  2. 10 9
      js/fileinput.js
  3. 0 0
      js/fileinput.min.js

+ 1 - 0
CHANGE.md

@@ -5,6 +5,7 @@ Change Log: `bootstrap-fileinput`
 
 
 **Date:** _under development_
 **Date:** _under development_
 
 
+- (bug #1510): Lock browse button correctly when disable method is called.
 - (bug #1499, #1502): Correct duplicate file check error rendering.
 - (bug #1499, #1502): Correct duplicate file check error rendering.
  
  
 ## version 5.0.7
 ## version 5.0.7

+ 10 - 9
js/fileinput.js

@@ -5041,7 +5041,6 @@
             var self = this, $container = self.$container;
             var self = this, $container = self.$container;
             self._resetErrors();
             self._resetErrors();
             self.disable();
             self.disable();
-            $container.addClass('is-locked');
             if (!selectMode && self.showCancel) {
             if (!selectMode && self.showCancel) {
                 $container.find('.fileinput-cancel').show();
                 $container.find('.fileinput-cancel').show();
             }
             }
@@ -5231,26 +5230,28 @@
             return self.$element;
             return self.$element;
         },
         },
         disable: function () {
         disable: function () {
-            var self = this;
+            var self = this, $container = self.$container;
             self.isDisabled = true;
             self.isDisabled = true;
             self._raise('filedisabled');
             self._raise('filedisabled');
             self.$element.attr('disabled', 'disabled');
             self.$element.attr('disabled', 'disabled');
-            self.$container.find('.kv-fileinput-caption').addClass('file-caption-disabled');
-            self.$container.find('.fileinput-remove, .fileinput-upload, .file-preview-frame button')
+            $container.addClass('is-locked');
+            $h.addCss($container.find('.btn-file'), 'disabled');
+            $container.find('.kv-fileinput-caption').addClass('file-caption-disabled');
+            $container.find('.fileinput-remove, .fileinput-upload, .file-preview-frame button')
                 .attr('disabled', true);
                 .attr('disabled', true);
-            $h.addCss(self.$container.find('.btn-file'), 'disabled');
             self._initDragDrop();
             self._initDragDrop();
             return self.$element;
             return self.$element;
         },
         },
         enable: function () {
         enable: function () {
-            var self = this;
+            var self = this, $container = self.$container;
             self.isDisabled = false;
             self.isDisabled = false;
             self._raise('fileenabled');
             self._raise('fileenabled');
             self.$element.removeAttr('disabled');
             self.$element.removeAttr('disabled');
-            self.$container.find('.kv-fileinput-caption').removeClass('file-caption-disabled');
-            self.$container.find('.fileinput-remove, .fileinput-upload, .file-preview-frame button')
+            $container.removeClass('is-locked');
+            $container.find('.kv-fileinput-caption').removeClass('file-caption-disabled');
+            $container.find('.fileinput-remove, .fileinput-upload, .file-preview-frame button')
                 .removeAttr('disabled');
                 .removeAttr('disabled');
-            self.$container.find('.btn-file').removeClass('disabled');
+            $container.find('.btn-file').removeClass('disabled');
             self._initDragDrop();
             self._initDragDrop();
             return self.$element;
             return self.$element;
         },
         },

File diff suppressed because it is too large
+ 0 - 0
js/fileinput.min.js


Some files were not shown because too many files changed in this diff