From 88571acd1b2b0b58cb11ec1030c7823300444281 Mon Sep 17 00:00:00 2001 From: AllenFang Date: Sat, 30 Sep 2017 13:59:31 +0800 Subject: [PATCH] fix #1652 --- src/BootstrapTable.js | 2 ++ src/TableBody.js | 1 + src/TableEditColumn.js | 3 +++ 3 files changed, 6 insertions(+) diff --git a/src/BootstrapTable.js b/src/BootstrapTable.js index 47f309572..042d01545 100644 --- a/src/BootstrapTable.js +++ b/src/BootstrapTable.js @@ -1529,6 +1529,7 @@ BootstrapTable.propTypes = { cellEdit: PropTypes.shape({ mode: PropTypes.string, blurToSave: PropTypes.bool, + blurToEscape: PropTypes.bool, beforeSaveCell: PropTypes.func, afterSaveCell: PropTypes.func, nonEditableRows: PropTypes.func @@ -1703,6 +1704,7 @@ BootstrapTable.defaultProps = { cellEdit: { mode: Const.CELL_EDIT_NONE, blurToSave: false, + blurToEscape: false, beforeSaveCell: undefined, afterSaveCell: undefined, nonEditableRows: undefined diff --git a/src/TableBody.js b/src/TableBody.js index fdf753a0e..409a58029 100644 --- a/src/TableBody.js +++ b/src/TableBody.js @@ -78,6 +78,7 @@ class TableBody extends Component { format={ column.format ? format : false } key={ i } blurToSave={ cellEdit.blurToSave } + blurToEscape={ cellEdit.blurToEscape } onTab={ this.handleEditCell } rowIndex={ r } colIndex={ i } diff --git a/src/TableEditColumn.js b/src/TableEditColumn.js index 8dd8e349d..ebd0e5258 100644 --- a/src/TableEditColumn.js +++ b/src/TableEditColumn.js @@ -62,6 +62,8 @@ class TableEditColumn extends Component { } this.props.completeEdit( value, this.props.rowIndex, this.props.colIndex); + } else if (this.props.blurToEscape) { + this.props.completeEdit(null, this.props.rowIndex, this.props.colIndex); } } @@ -266,6 +268,7 @@ TableEditColumn.propTypes = { rowIndex: PropTypes.number, colIndex: PropTypes.number, blurToSave: PropTypes.bool, + blurToEscape: PropTypes.bool, editable: PropTypes.oneOfType([ PropTypes.bool, PropTypes.object ]), format: PropTypes.oneOfType([ PropTypes.bool, PropTypes.func ]), row: PropTypes.any,