diff --git a/src/BootstrapTable.js b/src/BootstrapTable.js index ba5e8643d..8b2eee3e0 100644 --- a/src/BootstrapTable.js +++ b/src/BootstrapTable.js @@ -383,13 +383,13 @@ class BootstrapTable extends Component { }); } - handleSelectRow = (row, isSelected) => { + handleSelectRow = (row, isSelected, e) => { let result = true; let currSelected = this.store.getSelectedRowKeys(); const rowKey = row[ this.store.getKeyField() ]; const { selectRow } = this.props; if (selectRow.onSelect) { - result = selectRow.onSelect(row, isSelected); + result = selectRow.onSelect(row, isSelected, e); } if (typeof result === 'undefined' || result !== false) { diff --git a/src/TableBody.js b/src/TableBody.js index 9cf5527a2..76959385e 100644 --- a/src/TableBody.js +++ b/src/TableBody.js @@ -192,7 +192,7 @@ class TableBody extends Component { onRowClick(selectedRow); } - handleSelectRow = (rowIndex, isSelected) => { + handleSelectRow = (rowIndex, isSelected, e) => { let selectedRow; const { data, onSelectRow } = this.props; data.forEach((row, i) => { @@ -201,7 +201,7 @@ class TableBody extends Component { return false; } }); - onSelectRow(selectedRow, isSelected); + onSelectRow(selectedRow, isSelected, e); } handleSelectRowColumChange = e => { @@ -209,11 +209,12 @@ class TableBody extends Component { !this.props.selectRow.clickToSelectAndEditCell) { this.handleSelectRow( e.currentTarget.parentElement.parentElement.rowIndex + 1, - e.currentTarget.checked); + e.currentTarget.checked, + e); } } - handleEditCell = (rowIndex, columnIndex) => { + handleEditCell = (rowIndex, columnIndex, e) => { this.editing = true; if (this._isSelectRowDefined()) { columnIndex--; @@ -231,7 +232,7 @@ class TableBody extends Component { this.props.cellEdit.mode !== Const.CELL_EDIT_DBCLICK) { const selected = this.props.selectedRowKeys.indexOf( this.props.data[rowIndex][this.props.keyField]) !== -1; - this.handleSelectRow(rowIndex + 1, !selected); + this.handleSelectRow(rowIndex + 1, !selected, e); } this.setState(stateObj); } diff --git a/src/TableColumn.js b/src/TableColumn.js index ef140dac3..2c550a2d9 100644 --- a/src/TableColumn.js +++ b/src/TableColumn.js @@ -55,7 +55,8 @@ class TableColumn extends Component { } this.props.onEdit( e.currentTarget.parentElement.rowIndex + 1, - e.currentTarget.cellIndex); + e.currentTarget.cellIndex, + e); } render() { diff --git a/src/TableRow.js b/src/TableRow.js index 80aac9bc5..cac398dc4 100644 --- a/src/TableRow.js +++ b/src/TableRow.js @@ -14,7 +14,7 @@ class TableRow extends Component { const rowIndex = e.currentTarget.rowIndex + 1; if (this.props.selectRow) { if (this.props.selectRow.clickToSelect) { - this.props.onSelectRow(rowIndex, !this.props.isSelected); + this.props.onSelectRow(rowIndex, !this.props.isSelected, e); } else if (this.props.selectRow.clickToSelectAndEditCell) { this.clickNum++; /** if clickToSelectAndEditCell is enabled, @@ -23,7 +23,7 @@ class TableRow extends Component { **/ setTimeout(() => { if (this.clickNum === 1) { - this.props.onSelectRow(rowIndex, !this.props.isSelected); + this.props.onSelectRow(rowIndex, !this.props.isSelected, e); } this.clickNum = 0; }, 200);