Browse Source

Add i18n support.

zhixin 11 years ago
parent
commit
72bc9355ad
2 changed files with 39 additions and 19 deletions
  1. 8 2
      src/bootstrap-table.css
  2. 31 17
      src/bootstrap-table.js

+ 8 - 2
src/bootstrap-table.css

@@ -8,6 +8,7 @@
 .fixed-table-container {
 .fixed-table-container {
 	position: relative;
 	position: relative;
 	padding-top: 38px;
 	padding-top: 38px;
+    clear: both;
 	border: 1px solid #dddddd;
 	border: 1px solid #dddddd;
 	border-radius: 4px;
 	border-radius: 4px;
 	-webkit-border-radius: 4px;
 	-webkit-border-radius: 4px;
@@ -87,6 +88,11 @@
     line-height: 34px;
     line-height: 34px;
 }
 }
 
 
+.fixed-table-toolbar .page-list {
+    position: relative;
+    float: left;
+}
+
 .fixed-table-toolbar .page-list,
 .fixed-table-toolbar .page-list,
 .fixed-table-toolbar .search {
 .fixed-table-toolbar .search {
     margin-top: 10px;
     margin-top: 10px;
@@ -94,8 +100,8 @@
     line-height: 34px;
     line-height: 34px;
 }
 }
 
 
-.fixed-table-toolbar .page-list span {
-    margin-left: 5px;
+.fixed-table-toolbar .page-list button {
+    margin: 0 5px;
 }
 }
 
 
 .fixed-table-pagination li.disabled a {
 .fixed-table-pagination li.disabled a {

+ 31 - 17
src/bootstrap-table.js

@@ -1,6 +1,6 @@
 /**
 /**
  * @author zhixin wen <wenzhixin2010@gmail.com>
  * @author zhixin wen <wenzhixin2010@gmail.com>
- * version: 1.0.1
+ * version: 1.0.2
  */
  */
 
 
 !function ($) {
 !function ($) {
@@ -63,6 +63,16 @@
         search: false,
         search: false,
         selectItemName: 'btSelectItem',
         selectItemName: 'btSelectItem',
 
 
+        formatRecordsPerPage: function(pageNumber) {
+            return sprintf('%s records per page', pageNumber);
+        },
+        formatShowingRows: function(pageFrom, pageTo, totalRows) {
+            return sprintf('Showing %s to %s of %s rows', pageFrom, pageTo, totalRows);
+        },
+        formatSearch: function() {
+            return 'Search';
+        },
+
         onClickRow: function(item) {return false;},
         onClickRow: function(item) {return false;},
         onSort: function(name, order) {return false;},
         onSort: function(name, order) {return false;},
         onCheck: function(row) {return false;},
         onCheck: function(row) {return false;},
@@ -242,23 +252,25 @@
 
 
         if (this.options.pagination) {
         if (this.options.pagination) {
             html = [];
             html = [];
-            html.push(
-                '<div class="btn-group page-list">',
-                    '<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">',
-                        '<span class="page-size">',
-                        this.options.pageSize,
-                        '</span>',
-                        ' <span class="caret"></span>',
-                    '</button>',
-                    '<ul class="dropdown-menu" role="menu">');
+            html.push('<div class="page-list">');
+
+            var pageNumber = [
+                '<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">',
+                    '<span class="page-size">',
+                    this.options.pageSize,
+                    '</span>',
+                    ' <span class="caret"></span>',
+                '</button>',
+                '<ul class="dropdown-menu" role="menu">'];
+
             $.each(this.options.pageList, function(i, page) {
             $.each(this.options.pageList, function(i, page) {
                 var active = page === that.options.pageSize ? ' class="active"' : '';
                 var active = page === that.options.pageSize ? ' class="active"' : '';
-                html.push(sprintf('<li%s><a href="javascript:void(0)">%s</a></li>', active, page));
+                pageNumber.push(sprintf('<li%s><a href="javascript:void(0)">%s</a></li>', active, page));
             });
             });
-            html.push(
-                    '</ul>',
-                    '<span>records per page</span>',
-                '</div>');
+            pageNumber.push('</ul>');
+
+            html.push(this.options.formatRecordsPerPage(pageNumber.join('')));
+            html.push('</div>');
 
 
             this.$toolbar.append(html.join(''));
             this.$toolbar.append(html.join(''));
             $pageList = this.$toolbar.find('.page-list a');
             $pageList = this.$toolbar.find('.page-list a');
@@ -269,7 +281,8 @@
             html = [];
             html = [];
             html.push(
             html.push(
                 '<div class="pull-right search">',
                 '<div class="pull-right search">',
-                    '<input class="form-control" type="text" placeholder="Search">',
+                    sprintf('<input class="form-control" type="text" placeholder="%s">',
+                        this.options.formatSearch()),
                 '</div>');
                 '</div>');
 
 
             this.$toolbar.append(html.join(''));
             this.$toolbar.append(html.join(''));
@@ -327,7 +340,7 @@
         html.push(
         html.push(
             '<div class="pull-left pagination">',
             '<div class="pull-left pagination">',
                 '<div class="pagination-info">',
                 '<div class="pagination-info">',
-                    sprintf('Showing %s to %s of %s rows', this.pageFrom, this.pageTo, this.options.totalRows),
+                    this.options.formatShowingRows(this.pageFrom, this.pageTo, this.options.totalRows),
                 '</div>',
                 '</div>',
             '</div>',
             '</div>',
             '<div class="pull-right">',
             '<div class="pull-right">',
@@ -651,6 +664,7 @@
     };
     };
 
 
     $.fn.bootstrapTable.Constructor = BootstrapTable;
     $.fn.bootstrapTable.Constructor = BootstrapTable;
+    $.fn.bootstrapTable.defaults = BootstrapTable.DEFAULTS;
 
 
     // BOOTSTRAP TABLE INIT
     // BOOTSTRAP TABLE INIT
     // =======================
     // =======================