Browse Source

Merge pull request #76 from wenzhixin/master

Update my repo
Dennis Hernández 10 years ago
parent
commit
5cebecb913

+ 4 - 0
src/bootstrap-table.js

@@ -1824,6 +1824,10 @@
         // TODO: it's probably better improving the layout than binding to scroll event
         this.$tableBody.off('scroll').on('scroll', function () {
             that.$tableHeader.scrollLeft($(this).scrollLeft());
+
+            if (this.options.showFooter && !this.options.cardView) {
+                that.$tableFooter.scrollLeft($(this).scrollLeft());
+            }
         });
         that.trigger('post-header');
     };

+ 14 - 0
src/extensions/editable/README.md

@@ -34,6 +34,20 @@ Fired when all columns was initialized by `$().editable()` method.
 
 Fired when an editable cell is saved.
 
+parameters: field, row, oldValue, $el
+
+### onEditableShown(editable-shown.bs.table)
+
+Fired when an editable cell is opened for edits.
+
+parameters: field, row, $el, editable
+
+### onEditableHidden(editable-hidden.bs.table)
+
+Fired when an editable cell is hidden / closed.
+
+parameters: field, row, $el
+
 ## The existing problems
 
 * Editable extension does not support searchable in the select type.

+ 25 - 1
src/extensions/editable/bootstrap-table-editable.js

@@ -14,12 +14,20 @@
         },
         onEditableSave: function (field, row, oldValue, $el) {
             return false;
+        },
+        onEditableShown: function (field, row, $el, editable) {
+            return false;
+        },
+        onEditableHidden: function (field, row, $el) {
+            return false;
         }
     });
 
     $.extend($.fn.bootstrapTable.Constructor.EVENTS, {
         'editable-init.bs.table': 'onEditableInit',
-        'editable-save.bs.table': 'onEditableSave'
+        'editable-save.bs.table': 'onEditableSave',
+        'editable-shown.bs.table': 'onEditableShown',
+        'editable-hidden.bs.table': 'onEditableHidden'
     });
 
     var BootstrapTable = $.fn.bootstrapTable.Constructor,
@@ -76,6 +84,22 @@
                     row[column.field] = params.submitValue;
                     that.trigger('editable-save', column.field, row, oldValue, $(this));
                 });
+            that.$body.find('a[data-name="' + column.field + '"]').editable(column.editable)
+                .off('shown').on('shown', function (e) {
+                    var data = that.getData(),
+                        index = $(this).parents('tr[data-index]').data('index'),
+                        row = data[index];
+                    
+                    that.trigger('editable-shown', column.field, row, $(this));
+                });
+            that.$body.find('a[data-name="' + column.field + '"]').editable(column.editable)
+                .off('hidden').on('hidden', function (e, editable) {
+                    var data = that.getData(),
+                        index = $(this).parents('tr[data-index]').data('index'),
+                        row = data[index];
+                    
+                    that.trigger('editable-hidden', column.field, row, $(this), editable);
+                });
         });
         this.trigger('editable-init');
     };

+ 8 - 0
src/extensions/toolbar/bootstrap-table-toolbar.js

@@ -180,6 +180,10 @@
     BootstrapTable.prototype.load = function(data) {
         _load.apply(this, Array.prototype.slice.apply(arguments));
 
+        if (!this.options.advancedSearch) {
+            return;
+        }
+
         if (typeof this.options.idTable === 'undefined') {
             return;
         } else {
@@ -195,6 +199,10 @@
     BootstrapTable.prototype.initSearch = function () {
         _initSearch.apply(this, Array.prototype.slice.apply(arguments));
 
+        if (!this.options.advancedSearch) {
+            return;
+        }
+
         var that = this;
         var fp = $.isEmptyObject(this.filterColumnsPartial) ? null : this.filterColumnsPartial;