Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

react-bootstrap-table-2

k-komarov359MIT2.10.7TypeScript support: included

It's a react table for bootstrap

react, bootstrap, table, grid, react-component

readme

react-bootstrap-table

Join the chat at https://gitter.im/AllenFang/react-bootstrap-table

NPM version Build Status

Dependency Status devDependency Status peerDependency Status
It's a react.js table for bootstrap, named react-bootstrap-table. It's a configurable, functional table component and make you build a Bootstrap Table more efficiency and easy in your React application, However react-bootstrap-table support these features:

  • striped, borderless, condensed table
  • column align, hidden, width, sort, title
  • scrolling table
  • cell format
  • pagination
  • row selection
  • column filter with multi type
  • cell edit with multi type editor
  • insert & delete Row
  • table, row and column styling
  • global search
  • export to CSV
  • rich function hooks
  • large columns table
  • header colum span
  • remote mode
  • expandable row

Example Explore more example on examples folder
See more about react-bootstrap-table.
Check this for more advance usage for react-bootstrap-table. Feel free to ask more examples.
Check the CHANGELOG for more detail release notes.

Notes

v3.0.0-beta.5 released, check release page. There are a lots of example for customization component, you can also check the online version

v3.0.0 is under planning, check Milestone to v3.0.0.

After v2.4.4, we move the css files to dist folder for allowing this repo can be hosted on cdnjs

v2.0.0 has been released, the main patches are fixing the unalign or wrong size column on different browsers and improving the table structure. Please check this for more detail explanation.

Development

react-bootstrap-table dependencies on react 0.14.x and Bootstrap 3 written by ES6 and use gulp and browserify for building and bundling.

You can use the following commands to prepare development

$ git clone https://github.com/AllenFang/react-bootstrap-table.git
$ cd react-bootstrap-table
$ npm install

Use gulp to build the react-bootstrap-table

$ gulp dev  #for development
$ gulp example-server #see all examples, go to localhost:3004
$ gulp prod #for production

Usage

a.Install

npm install react-bootstrap-table --save

b.Import Module

To use react-bootstrap-table in your react app, you should import it first. You can do this in two ways:

With a module bundler

With a module bundler like webpack that supports either CommonJS or ES2015 modules, use as you would anything else.
You can include source maps on your build system to debug on development. Don't forget to Uglify on production.

// in ECMAScript 6
import { BootstrapTable, TableHeaderColumn } from 'react-bootstrap-table';
// or in ECMAScript 5
var ReactBSTable = require('react-bootstrap-table');  
var BootstrapTable = ReactBSTable.BootstrapTable;
var TableHeaderColumn = ReactBSTable.TableHeaderColumn;
Browser global(window object)

In the dist folder you have a UMD bundle with source maps (react-bootstrap-table.js) as well as a minified version (react-bootstrap-table.min.js).

<script src="path/to/react-bootstrap-table/dist/react-bootstrap-table.min.js" />
<script>
  var ReactBsTable = window.BootstrapTable;
  //...
<script/>

The UMD build is also available on npmcdn:

// source maps: https://npmcdn.com/react-bootstrap-table/dist/react-bootstrap-table.js.map
<script src="https://npmcdn.com/react-bootstrap-table/dist/react-bootstrap-table.js"></script>
// or use the min version
<script src="https://npmcdn.com/react-bootstrap-table/dist/react-bootstrap-table.min.js"></script>

c.Import CSS

Finally, you need to import the css file to your app, there are two css file you can choose.
react-bootstrap-table-all.min.css include toastr.
react-bootstrap-table.min.css doesn't include toastr.
Notes: react-bootstrap-table use toastr to alarm some message to user.

<link rel="stylesheet" href="./dist/react-bootstrap-table-all.min.css">

The CSS files you can find in the css folder.

Quick Demo

// products will be presented by react-bootstrap-table
var products = [{
      id: 1,
      name: "Item name 1",
      price: 100
  },{
      id: 2,
      name: "Item name 2",
      price: 100
  },........];
// It's a data format example.
function priceFormatter(cell, row){
  return '<i class="glyphicon glyphicon-usd"></i> ' + cell;
}

React.render(
  <BootstrapTable data={products} striped={true} hover={true}>
      <TableHeaderColumn dataField="id" isKey={true} dataAlign="center" dataSort={true}>Product ID</TableHeaderColumn>
      <TableHeaderColumn dataField="name" dataSort={true}>Product Name</TableHeaderColumn>
      <TableHeaderColumn dataField="price" dataFormat={priceFormatter}>Product Price</TableHeaderColumn>
  </BootstrapTable>,
    document.getElementById("app")
);

More react-bootstrap-table examples

The example source codes is in the examples folder. Run the following commands for a live demo.

$ git clone https://github.com/AllenFang/react-bootstrap-table.git
$ cd react-bootstrap-table
$ npm install
$ gulp example-server #after start, open browser and go to http://localhost:3004

Documentation

Thanks

luqin
Help this project to integrate a better examples demo, add travis & badge, code formatting, give a lot of suggestions and bugs report.
Whien
Implement a lots of awesome new feature and also fix some bugs and enhancements.
khinlatt
Contribute export csv, multi-search and bug fixing.
dana
Contribute a new colum-filter design and great feedback given.
tbaeg
Bugs report and give some bootstrap and css suggestions actively.
bluedarker
Contribute the edit format & validation on cell editing and row insertion. Improve the custom styling.
Sofia Silva
Bug reports and fixing actively.
frontsideair
Fixing bugs and give improvement for functionality.
aaronhayes
Bugs report and enhance the cell formatting.
Reggino
Implement the TableDataSet component.

changelog

v2.9.1 (2017-01-15)

Bug fixes

  • Fixed Uncaught TypeError: _this3.props.adjustHeaderWidth is not a function when expanding row(9202f31)

Features

  • Support to hide the text for no data table(8bedcf7)
    • Use options.withoutNoDataText, default is false. Give true will hide the text content
    • Example

v2.9.0 (2017-01-09)

Enhancement

  • Enhance the expanding row, support options.expanding(aeb7125)
  • Add options.beforeShowError to do some thing before toastr popup(9bc8b7f)
    • Return false or do not return to prevent toastr popup
    • example

Features

v2.8.3 (2017-01-07)

Enhancement

  • Add invalidEditColumnClassName props on TableHeaderColumn for supporting the class on cell editing fail(4ddc906)

Features

  • Allow to configure the text, select or custom with a filter condition, default is like and eq is available.(a48e10c)
  • Allow to add your own attribute on TD element(a44e189)

v2.8.2 (2016-12-29)

Bug fixes

  • Hot fixes for sort caret disappear after v2.8.1(7e88e15)

v2.8.1(unpublish) (2016-12-28)

Bug fixes

  • Fixed onRowMouseOver called with wrong arguments when expandableRow enable(86270e2)

Enhancement

  • Fixed TableHeader: prop type colGroups is invalid(11e9daa)

v2.8.0 (2016-12-25)

Features

  • Support colSpan and rowSpan on table header(8e459ef)

v2.7.1 (2016-12-18)

Bug fixes

  • Fix layout error when expand row with a hidden column outside(460ba53)

Enhancement

  • Support editColumnClassName prop on <TableHeaderColumn> for separate from columnClassName(dbc40d3)
  • Support headerText prop on <TableHeaderColumn>(9183e71)
    • It's optional but if you dont have a pure text as children in <TableHeaderColumn>, you can configure this prop to avoid couple wanring when insert or filter.
    • The value of this prop will be used on the placeholder or tip for filter or insert modal field.

Features

  • Allow to expand row by specified column or a row(95fbfd4)
    • Check this example
    • Give expandBy in options props and assign as column or row(row is default)
    • If you give expandBy as column, all column can trigger expanding by click
    • You can tell react-bootstrap-table which column can trigger expanding by expandable={ false } on <TableHeaderColumn>

v2.7.0 (2016-12-13)

Bug fixes

  • Fixed calling handleSearch('') will no clear the text on search field(f7646dc)
  • Fixed getComputedStyle is not defined error(c9587b2)
  • Fixed fails in restricted network environment for react-toastr with a git url installation

Features

  • Support scrollTop prop on <BootstrapTable>(20a0d65)
    • Available valus is a numeric value or Top or Bottom

v2.6.0 (2016-11-28)

Bug fixes

Features

Enhancement

  • Support row lock level on cell edit(7c57b52)
    • Use nonEditableRows in cellEdit props
    • nonEditableRows accept a callback function which return an array of rowKey which is noneditable rows

v2.5.9 (2016-11-21)

Bug fixes

  • Fix npm 3 install fail#797(3fea774)
  • Fix cleanFiltered could not clear customerFilter(07b8560)

Enhancement

  • Throw errors instead of string literals(f32ba6f)

v2.5.8 (2016-11-09)

Bug fixes

  • Fixed the issue with giving the paginationShowsTotal as function when table is empty(ec93ddb)

Enhancement

  • Add an option for changing the text on select filter(79b9f41)

v2.5.7 (2016-11-02)

Bug fixes

  • Fixed display boolean value if value is false(8fde9d6)
  • Fixed the filters do not work with dynamically generated columns(e1f287a)

Enhancement

  • Add headerTitle in <TableHeaderColumn> for enable the title on header, default is true(7685e14)
  • Redirect to first page if calling handleAddRowAtBegin(3a4432a)

v2.5.6 (2016-10-22)

Bug fixes

  • Fixed Search fails on number 0(2af763e)
  • Fixed the wrong display text when giving sizePerPageList as an array of object(a48dc5f)

Enhancement

  • Support onRowDoubleClick in options prop(3d884ea)

v2.5.5 (2016-10-01)

Enhancement

v2.5.4 (2016-09-27)

Bug fixes

  • Fixed the incorrect page number for paginationShowsTotal when data is empty(ba524f9)
  • Fixed Cannot read property 'name' of undefined during option change if a given page bigger than total pages count(96c35aa)

Enhancement

  • Make pagination button compatible with Bootstrap@4(1c0e9f5)
  • Keep cell editing stay if table re-rendering(6777a72)

v2.5.3 (2016-09-18)

Bug fixes

  • Fix wrong text for pagination show totals(62ce772)
  • Should not deselect disabled checked checkbox on click on unselected all(41e3723)

Enhancement

  • Avoid console error for invalid regex in regex-filter(ef15ce0)

v2.5.2 (2016-09-11)

Bug fixes

  • Fix select filter not working as expected(1d3960c)
  • Fix pagination covers table when setting maxheight(dcc54d2)

Enhancement

  • Allow sizePerPageList accept an object which follow this format { text: '10', value: 10 }(635b838)

v2.5.1 (2016-09-03)

Bug fixes

  • Fix update sizePerPage through componentWillReceiveProps does not update select list(5740871)
  • Fix table didn't reflect changes of unselectable prop when passed array changes dynamically(85000f8)

Enhancement

  • Showing rows for paginationShowsTotal should start at 1 instead of 0(271cf10)
  • Enable customized for notification messages after validation(e2d924f)
    • check this example

v2.5.0 (2016-08-28)

* Upgrade minor version *

v2.4.4 (2016-08-27)

Bug fixes

  • Fix SelectFilter can't display boolean value(b84861c)
  • Fix boolean can't be populate to table column(ecc6a16)
  • Fix unknown props warnings by react-toastr(16cb7ef)

Enhancement

  • Move css files to dist folder(ffb8031)
  • Allow to apply className to following elements(b426974)
    1. react-bs-table-container, use containerClass to set className
    2. react-bs-table, use tableContainerClass to set className
    3. react-bs-container-header, use headerContainerClass to set className
    4. react-bs-container-body, use bodyContainerClass to set className

v2.4.3 (2016-08-21)

Bug fixes

  • Editable converts zero (0) to empty string on first editing(422d6f8)
  • Fix a wrong sorting result after apply search(7e5a726)
  • Fix paginationShowsTotal propTypes is invalid(cc5dd7f)

Enhancement

  • Disable DOM on exported CSV file(48b9a98)
  • Hide export csv button when printing(cc625a0)
  • Allow onCellEdit return a value which present as the new value for editing.(f0030f0)

v2.4.2 (2016-08-13)

Bug fixes

  • Fix the column width broken if table is empty(9172656)

Features

  • Support to call applyFilter exposed by <TableHeaderColumn> for set filter value dynamically(e30f86c)
  • Support to customize the selection column(c5875d5)
  • Support cell edit on remote mode(f399e87)

Enhancement

  • Pass the row in props at second arguments for customEditor.getElement(2de6c5c)

v2.4.1 (2016-08-06)

Features

  • Support default search(825ca76)
    • Assign defaultSearch in options props
  • Support the date picker for cell edit(a861890)

Enhancement

  • Avoid to overwrite the .table-bordered class.(0a678ed)
  • Allow csvFileName accept a function to generate file name dynamically(a730833)
  • Allow height to accept number or string(7f3ac47)

v2.4.0 (2016-08-06)

Features

  • Enable to clear filter by calling cleanFiltered which exposed by <TableHeaderColumn>(bda6ff4)
  • Support cell edit customization(b162b52)
    • Apply customEditor on <TableHeaderColumn>
    • Check example

Enhancement

  • Fix wrong devtool for webpack on example(ff1da38)
  • Use btn-primary for save button(a7923b4)
  • Pass row index as fourth arguments for dataFormat(eae2f23)
  • Add example for showing how to make select all only work on current page(ff31b0d)

v2.3.9 (2016-07-25)

Bug fixes

  • Fix csvFormat doesn't pass the second argument(6d51a26)

Features

  • Support to filter or search on nest object(3c6467d)
    • Assign filterValue on <TableHeaderColumn>
    • Check example

Enhancement

  • Avoid onExportToCSV only work on remote condition(c201793)
  • Use ReactDOM.render instead of React.render(d45cb97)

v2.3.8 (2016-07-16)

Bug fixes

  • Fix #550, a unselectable list issues after refresh(5a85f06)

Enhancement

  • Add export on <TableHeaderColumn>(aa4dfc3)
    • You can add export={true} to tell react-bootstra-table exporting this column if it is hidden
    • Also, you can add export={false} to tell react-bootstra-table don't export this column

v2.3.7 (2016-07-02)

Bug fixes

v2.3.6 (2016-06-20)

Bug fixes

  • Fix filter null data(8a90468)
  • Fix setState will cause changing to page one if selected row is on last page(7093d58)

Features

  • Support unselectable in selectRow props which can make some row unselectable(f5faef1)
  • Expose getTableDataIgnorePaging function on <BootstrapTable> to allow user get the all data(include filtered)(34f3568)

v2.3.5 (2016-06-11)

Bug fixes

  • Fix column title is null problem(4d25667)
  • Fix sizePerPage always to be options value if setState(58540b3)
  • fix currPage always to be options value if setState(544cd26)

Enhancement

  • Support headerAlign for align header text only(e8930f6)

v2.3.4 (2016-06-05)

Bug fixes

  • Fix a next page showing if there's no data(ddf7fc9)
  • Fix the wrong class on selection row if a trClassName given(2d3d1cb)
  • Fix the save button doesn't work in textarea editing if disable blurToSave(2e0eca5)

Features

  • Able to hide the pagination if there's only one page(4739d43)
    • Enable ignoreSinglePage on <BootstrapTable>
  • Able to hide the sizePerPage doprdown(7c88a3b)
    • Add hideSizePerPage in options props on <BootstrapTable>
  • Support to customize the csv header text(ef11be9)
    • Use csvHeader on <TableHeaderColumn>

Enhancement

  • Fix confirm grammar for row delete(cd26ba9)

v2.3.3 (2016-05-29)

Bug fixes

  • Fix warning: NaN is an invalid value for the width css style property(4018df5)
  • Fix uncaught TypeError: Cannot read property 'filter' of undefined(dc67221)
  • Fix search then filter will ignore the search(dc67221)

Features

  • Custom text for paginationShowsTotal(07b3e7a)
    • paginationShowsTotal accept a bool value or a function, if a function given you need return the customize JSX.
    • Check example
  • Support hide field in insert modal(9a7e93a)
    • Use hiddenOnInsert on <TableHeaderColumn>

Enhancement

  • Ability to return unselected rows in onSelectAll(a23c290)

    • On select all, the second argument will be the current display rows on table.
    • On unselect all, the second argument will be the unselect rows.
    • Check example
  • Improve the validation on onSelectAll(4666523)

    • If return true/false in onSelectAll, means agree/disard this select all event.
    • If return an array of rowKeys in onSelectAll, means the final selected result for this select event.
    • Check select validation example

v2.3.2 (2016-05-23)

Bug fixes

  • Fix sorting on null value(6a1c88b)

Features

  • Support for pagination start index(98499b2)
    • Use pageStartIndex in options
    • Check example
  • Able to add classname on tag(866e07d)
    • tableHeaderClass for header table and tableBodyClass for body table
    • Check example

    v2.3.1 (2016-05-11)

    Bug fixes

    Features

    • Support column title(e77bd32)
      • Enable columnTitle on <TableHeaderColumn>
    • Support csv format on column(acd12b1)
      • Because dataFormat is not appropriate on column when exporting csv file, so csvFormat been supported.
      • Check this example
    • Enable to custom the save and close button text in insert modal(072eeee)

    v2.3.0 (2016-05-04)

    Bug fixes

    • Fix filters doesn't work when the column contains null values(2199431)

    Features

    v2.2.0 (2016-04-29)

    Bug fixes

    • Fix default value on filter are broken when upgrade to ```react@15.0.0`(b455582)
    • Fix column header pulse when sorting(4ec7521)
    • Fix Cannot assign to read only property 'children' of object '#<Object>' on single column table(3a95495)

    Features

    v2.1.5 (2016-04-26)

    Features

    • Support position and total pages(8c6393b)
      • Enable paginationShowsTotal in options props
      • check example

    Enhancement

    • Allow developer to define inline styling on react-bootstrap-table(e60e607)
      • Check example
      • containerStyle props is corresponding to the react-bs-table-container class.
      • tableStyle props is corresponding to the react-bs-table class.
      • headerStyle props is corresponding to the react-bs-container-header class.
      • bodyStyle props is corresponding to the react-bs-container-body class.

    v2.1.4 (2016-04-15)

    Bug fixes

    • Fix data loss on cell edit when only a validator given(d652e63)

    • Fix select state still remain when update state on table(9ffea48)

    v2.1.3 (2016-04-11)

    Features

    • Support comparator on date filter(bf5b4d2)

    Enhancement

    • Pass event object as third argument on onRowSelect callback function(b1e8d18)
    • Support a better mechanism for default sorting(ac0dd35)

    v2.1.2 (2016-04-06)

    Bug fixes

    • Fix editor type broken if enable ignoreEditable(b92481d)
    • Fix sort broken after doing column filter(47cad29)

    Features

    v2.1.1 (2016-04-01)

    Bug fixes

    • Fix the delay search bug(it not real to wait for typing nothing)d601337
    • Fix a error if cell is empty on date filter(40b4a40)
    • Fix a bug when insert row with sort and filter(027c0ec)
    • Give a workaround for fixing a bug when sort on same field(16d8488)
    • Fix #375(cf28f8f)

    Features

    Enhancement

    • Able to provide extra data with a custom sort function(509ce22)
    • Avoid '[object Object]' shown as title on column header(5da38c3)

    v2.1.0 (2016-03-26)

    Bug fixes

    • Fix the select all checkbox should be empty if there is no data in table(449eb1b)
    • Fix a SSR issue on csv export module(d46ca49)
    • Fix a SSR issue when enable insertRow(fbc4654)
    • Fix search broke with a backspace(d24f1c4)

    Features

    • TableDataSet has been removed on v2.1.0(239d8b1)
    • Support a delay when typing search text(b54f84a)
      • Check example at here
    • It's able to get the page number by rowKey(55d475f)
    • Allow user to change the text on export CSV button(f6171fa)
      • use exportCSVText in option props
        render() {
          const options = { exportCSVText: 'MY_CUSTOM_TEXT' };
          return (
              <div>
                  <BootstrapTable ref='table' options={ options }>
                      ....
                  </BootstrapTable>
              </div>
          );
        }

    Enhancement

    • Pass rowKey as parameter for handleConfirmDeleteRow callback function(c2f8ce1)
      • Check example at here

    v2.0.3 (2016-03-22)

    Enhancement

    • Improve build system for reducing the size of bundling file(0e29899)
    • Pass event as param for event mouse(482f2f0)

    v2.0.2 (2016-03-20)

    Bug fixes

    • Fix when interacting with filters will cause a column sort(00213b9)
    • Fix 'document is not defined' when used with server side rendering(4c26adf)

    Features

    • Support beforeSaveCell on cell editing, you can do a validation and decide whether accept this editing(2233de7)

    Enhancement

    • Apply eslint more strict(a836bb5)

    v2.0.1 (2016-03-16)

    Bug fixes

    • Fix screen remains dark after inserting( row423d6e5)
    • Fix search and filter features combination does not work(643f9ca)

    Features

    Enhancement

    • Make column text as the title on table header(68efb43)
    • Add a float filter on examples folder(d2b7854)

    v2.0.0 (2016-03-13)

    For v2.0.0, I improve the dom structure and css of table. The main issues what I want to solve is

    • The column unalign problem in different browser or in tabs(react-bootstrap)
    • A wrong rendering width on column in some case
    • A wrong height on table
    • Large columns problems

    Please check this discussion for more detail explanation.

    v1.6.2 (2016-03-11)

    Bug fixes

    • Options value for current page and size per page are not respected(0f30823)
    • Pagination doesn't work in IE9(79af10e)

    Features

    • Sort indicator configurable(d66634c)
      • Default is enable, means sort indicator will show on header column if enable sort
      • Check example to see how to disable it

    v1.6.1 (2016-03-08)

    Bug fixes

    • Fix Uncaught TypeError: Cannot read property 'type' of null(54e97a1)
    • Fix Uncaught TypeError: children.map is not a function(7d45b80)

    Features

    • Make hidden column can be searched by default(1d3dd8e)

    v1.6.0 (2016-03-06)

    Bug fixes

    • Fix selection checkbox sharing with the same name(207dbf2)

    Features

    • Provide searchable on <TableHeaderColumn> for enable/disable search on column(82c6b12)
    • Support prepend new row on table(881cb13)

      • It's a expose API by BootstrapTable

        handleBtnClick = () => {
        this.refs.table.handleAddRowAtBegin({
        id: fake_id,
        name: 'product 1', .....
        });
        }
        
        render() {
        return (
          <div>
            <button onClick={this.handleBtnClick}>Prepend</button>
            <BootstrapTable ref='table'>
                ....
            </BootstrapTable>
          </div>
        );
        }

    Enhancement

    • Clear timer on number and text filter when component unmount(c71f508)
    • Make sort field be passed as fourth argument when customize sort function(011a8d7)
      • Check following code
        function numberSortFunc(a, b, order, sortField){   //we add sortField in this patch
        //....
        }
        //...
        ReactDOM.render(
        <BootstrapTable data={products}>
          <TableHeaderColumn dataField='id' isKey={true} dataSort={true} sortFunc={numberSortFunc}>Product ID</TableHeaderColumn>
          <TableHeaderColumn dataField='name'>Product Name</TableHeaderColumn>
          <TableHeaderColumn dataField='price' dataSort={true} sortFunc={numberSortFunc}>Product Price</TableHeaderColumn>
        </BootstrapTable>
        );

    v1.5.4 (2016-02-27)

    Bug fixes

    Enhancement

    Features

    v1.5.3 (2016-02-23)

    Bug fixes

    • Fix #289 which happened after v1.5.2(ecf744c)
    • Fix column-filter broken when using default value and pagination(add9ff6)
    • Fix origin column filter broken after v1.5.1(b2625c0)
    • Fix the screen is still dimmed after insert row(8582ca4)

    Enhancement

    • Move inline style for display no data text to css file(8d8553b)

    v1.5.2 (2016-02-21)

    Bug fixes

    Enhancement

    v1.5.1 (2016-02-17)

    Bug fixes

    • Fix On state change: Uncaught TypeError: Cannot read property 'props' of null(38a8bd9)

    Features

    • New filtering behavior + default filter definition(68416ef)
      • Check this PR
      • See more examples on example folder

    Enhancement

    • Add className on delete and insert button(3baedef)
    • Add className on no data <th>, can Customize of the "no data to display" cell(79dd442)

    v1.5.0 (2016-02-05)

    Bug fixes

    • Fix variable reference issue for default selected(13f736c)

    Features

    • Support column formatting with extra data(9de2e9e)
      • Check this examples
    • Change the pagination behavior(74c1fc7)
      • Check this PR for more detail

    Enhancement

    • Show sorting caret on header if sort enabled(55ac719)

    v1.4.6 (2016-01-30)

    Features

    • Support column format with extra data(a4e4565)
      • Add formatExtraData in TableHeaderColumn. Check the example in examples/js/column-format/extra-data-column-format-table.js
    • Add Clear button for cleaning search input field(8d41dc5)
      • add clearSearch on options props
        var options = {
          clearSearch: true
        };
        //...
        ReactDOM.render(
          <BootstrapTable data={collection} options={options}>...
        );

    Enhancement

    • Available to clean all selection state By API(f5978f9)

    v1.4.5 (2016-01-25)

    Bug fixes

    • Fix pagination lost(6fe1812) check example in examples/js/selection/externally-managed-selection.js
    • Fix #213(c004c90)

    Features

    • Add class on select all checkbox(b955d92)

    Enhancement

    • Support source map(d0d78ef)
    • Sorting data provided in data in-place rather than using a copy or some other heuristic(3157dbe)

    v1.4.4 (2016-01-21)

    Bug fixes

    • Sorting not re-rendering data when dataFormat is being used(7810fa3)
    • Table should be sortable when a column is hidden programmatically(1c403b1)

    v1.4.3 (2016-01-20)

    Bug fixes

    • Row end with a superfluous comma when export csv(078d91d)
    • Apply a dataFormat column will breaks when hiding(6878e90)
    • Setting default sort and then sorting first time always sort descending(ab43542)

    v1.4.2 (2016-01-16)

    Bug fixes

    • Fix handleSort Function is not changing caret icon(b8ebbb3)
    • Fix search fails on columns in data set but not included in table(0ce3eb4)

    Features

    • Support showing selected row only(a18a463)
      • add showOnlySelected on selectRow props
        var selectRowProp = {
          mode: "checkbox",
          showOnlySelected: true
        };

    Enhancement

    • Improve long table performance(564379a)

    v1.4.1 (2016-01-10)

    Bug fixes

    • Fix the background color of header can't spread to 100%(fa2c827)

    Features

    • Allow to filter or search data which after formatting(9be42ad)
      • Apply filterFormatted={true} on <TableHeaderColumn> to enable filtering formatted data.

    Enhancement

    • Add class(table-footer-pagination) on pagination for better customization(1ab1662)
    • Add class(table-header-wrapper) on table header for better customization(fa2c827)
    • Improve search bar too small on small screens (eg. iphone4/5)(674bf95, 351d925)

    v1.4.0 (2016-01-06)

    Bug fixes

    • Fix condensed table with a overlapping padding on first row(159b8f3)

    Features

    • Support max height(91bcf2a)
      • Assign maxHeight to set a max height of table.
    • Allow to customize confirmation for row deletion(eb21ec8)

        function customConfirm(next){
          if (confirm("(It's a custom confirm function)Are you sure you want to delete?")){
              //If the confirmation is true, call the function that
              //continues the deletion of the record.
              next();
          }
        }
      
        var options = {
          handleConfirmDeleteRow: customConfirm
        }
      
        <BootstrapTable
                data={products}
                deleteRow={true}
                selectRow={selectRowProp}
                options={options}>...

      Enhancement

    • Tuning the styling of pagination and toolbar panel(3100ee6)
    • Upgrade react-toastr to 2.3.0(d9e1c14)
    • Upgrade react to 0.14.3(9af1c24)

    v1.3.3 (2015-12-25)

    Bug fixes

    • Fix Uncaught TypeError: Cannot assign to read only property when edit column after search(689b60f)

    Enhancement

    • Make the paginatation button disabled appropriately when page change to the end or begin(502cffb)

    v1.3.2 (2015-12-20)

    Bug fixes

    • Fix a case where current page and pagination size is lost(f01f6ec)(1d57c6d)
    • Pagination style tuning(9ccf5ab)

    Features

    • Support return value from onSelect and onSelectAll handlers(bf27116)
      • If return value of this function(onSelect or onSelectAll) is false, the select or deselect action will not be applied.
    • Support indeterminate status to select all checkbox(3d9be07)
    • Support to change display text when data was empty(d4e16e7)

        var options = {
            noDataText: 'Your_custom_text'
        };
      
        <BootstrapTable
                        data={products}
                        options={options}
                    >...

    v1.3.1 (2015-12-12)

    Bug fixes

    • Fix column broken when resize to bigger window from smaller(d4b3f87)

    Features

    • Add selection event of size per page dropdown in pagination(7fbd868)

    v1.3.0 (2015-12-06)

    Bug fixes

    • Fix import by RequireJS unavailable(3272c45)

    Features

    • Available to add a custom class on a selection of row(ff06fcd)

        var selectRowProp = {
          mode: "checkbox",
          className: "my-custom-select-class"
        };
      
        <BootstrapTable
                        data={products}
                        selectRow={selectRowProp}
                    >...
    • Available to insert row By API(a47276a)
    • Available to drop row by API(88062b7)
    • Available to filter by column through API

    v1.2.15 (2015-12-01)

    Bug fixes

    • Fix TableDataSet is now available via Window object(b6c065a)
    • Fix warning message "Cannot read property 'refs' of undefined_adjustHeaderWidth" when resizing window(fe1910a)

    v1.2.14 (2015-11-27)

    Bug fixes

    • Fix the NaN value in style(8a6b9b0)

    v1.2.13 (2015-11-25)

    Bug fixes

    • Fix sizing bugs in 1.2.11 tested in firefox(4d0f7cd)
    • Fix csv export bug use on server side rendering(3d46d88)
    • Fix #152(ee5e3f5)
    • Don't draw a dropdown if one or zero options for pagination size list(881b7cd)

    v1.2.12 (2015-11-19)

    Bug fixes

    • Fix select row unavailable cause of change in v1.2.11(0dd2dc1)

    Features

    • Use comma delimited in csv instead of tab delimited(1a219c6)

    v1.2.11 (2015-11-16)

    Bug fixes

    • Fix missing multiColumnSearch if data reload(cf6a933)
    • Fix condensed style bug(4957f55)
    • Fix column content exceed user column width definition(88b1368)

    v1.2.10 (2015-11-14)

    Bug fixes

    • Fix loading toastr css timeout problem(9f592d0)

    v1.2.9 (2015-11-13)

    Bug fixes

    v1.2.8 (2015-11-11)

    Bug fixes

    • Fix Overflow on column width bug(9ff999e)
    • Fix column hidden bug when export csv(7009c39)
    • Fix row click also trigger row selection(1cb7dbd)
    • Change to page one if data reload(69233b8)
      • It's about the issue#125, but not yet fix certainly.

    v1.2.7 (2015-11-07)

    Features

    • Support Export CSV
      • Set exportCSV to true on <BootstrapTable>, csvFileName is alternative property for csv file name.
    • Support onRowClick for after clicking a row(b442d95)

      • Add onRowClick in options properties on <BootstrapTable>

        var options = {
          onRowClick: function(row){
        
          }
        }
        
        <BootstrapTable
            data={products}
            options={options}
          >...
    • Support afterSearch and afterColumnFilter for after searching or column filtering(eccb61d)

      • Add afterSearch or afterColumnFilter in options properties on <BootstrapTable>

        var options = {
          afterSearch: function(searchText, result){
        
          },
          afterColumnFilter: function(filterConds, result){
        
          }
        }
        
        <BootstrapTable
            data={products}
                      search={true}
                      columnFilter={true}
            options={options}
          >...

    Bug fixes

    • fix checkbox default toString() bug(f8ad7a2)

    v1.2.6 (2015-11-03)

    Features

    • Support multi search(4874169)
      • Add multiColumnSearch={true} on <BootstrapTable>
      • In search input text, you can use space to split search text, for example: "usa france japan" to search table which contain usa or feance or japan.

    Bug fixes

    v1.2.5 (2015-10-27)

    Bug fixes

    • Fix header and body unalign(3f44200)

    v1.2.4 (2015-10-26)

    Enhancement

    • The gap between table and pagination(c1a886b)
    • Ensure default checkbox in editor is String(0ef45d0)
    • Support keyField(2fab4d8)
      • Set keyField in <BootstrapTable> to specify which column is key.
      • Actually, this attribute is as same as the isKey in <TableHeaderColumn>. So you can choose on to assign which column is key.

    Features

    • Add onPageChange hook

      
        function onPageChange(page, sizePerPage){
            ...
        }
      
        var options = {
            onPageChange: onPageChange
        }
      
        <BootstrapTable
              data={products}
              pagination={true}
              options={options}
            >...
      }
    • Add onSortChange hook

      
        function onSortChange(sortName, sortOrder){
            ...
        }
      
        var options = {
            onSortChange: onSortChange
        }
      
        <BootstrapTable
              data={products}
              options={options}
            >...
      }

    v1.2.3 (2015-10-24)

    Enhancement

    • Split toastr css with react-bootstrap-table css(06defe2)
      • react-bootstrap-table-all.min.css include toastr css
      • react-bootstrap-table.min.css doesn't include toastr css
    • Updat dependencies for **node@4.2.1**(a3a7b0c)
    • Remove deprecated .getDOMNode() calls(37b5c7e)
    • Update examples UI and add react-router(4166580)
      • use npm start or gulp example-server to watch examples on localhost:3004 Examples

    v1.2.2 (2015-10-21)

    Bug fixes

    v1.2.1 (2015-10-19)

    Bug fixes

    • Update TableDataSet missing pagination(46c93ce)
      • More discussion on #70

    Features

    • Get selected Data only show in table when onSelectAll be called(9d391ee)
      function onSelectAll(isSelected, currentDisplayAndSelectedData){
         //..
      }

    v1.2.0 (2015-10-13)

    Bug fixes

    • Remove toastr's css hard dependency(28e0b11)

    Features

    v1.0.3 (2015-10-10)

    Bug fixes

    • Fix window is undefinde if use react-bootstrap-table in isomorphic(f5db238)

    Features

    • Adding Table with borderless feature(43e484f)
      • See it on #63

    v1.0.2 (2015-10-09)

    Bug fixes

    • Fix wrong path of toastr

    v1.0.1 (2015-10-08)

    Bug fixes

    • Wrong Dependencies with react-toastr and toastr(bd16999)

    v1.0.0 (2015-10-04)

    Bug fixes

    • Fix key warning in PaginationList warning(9057e1c)
    • Fix default sorting bug(3eb6dbe)

    Features

    • Separate classname of header and body column
      • Set className in <TableHeaderColumn> to define class on header
      • Set columnClassName on <TableHeaderColumn> to define class on body's column
    • Add cell edit validation and input type(select,checkbox,textarea)
    • Add a complete examples Demo
      • Run gulp example-server and go to localhost:3004/example-list.html
    • Give more customize features on Pagination
      • Default pagination setting

    v0.9.17 (2015-09-25)

    Features

    • Hide row selection column(260a1a4)