Having trouble getting help?
Contact Support
Contact Support
Dynamic edit mode in React Inplace editor component
24 Jan 202311 minutes to read
At component initial load, if you want to open editor state without interacting In-place Editor input element, it can be achieved by configuring the enableEditMode property to true
.
In the following sample, editor opened at initial load and when toggling a checkbox, it will remove or open the editor.
[Class-component]
import { CheckBoxComponent } from '@syncfusion/ej2-react-buttons';
import { InPlaceEditorComponent } from '@syncfusion/ej2-react-inplace-editor';
import * as React from 'react';
import './App.css';
class App extends React.Component {
inplaceEditorObj;
checkboxObj;
model = { placeholder: 'Enter some text' };
onChange(e) {
this.inplaceEditorObj.enableEditMode = e.checked;
this.inplaceEditorObj.dataBind();
}
render() {
return (<div id='container'>
<table className="table-section">
<tr>
<td> EnableEditMode: </td>
<td>
<CheckBoxComponent id='enable' label='Enable' checked={true} change={this.onChange = this.onChange.bind(this)}/>
</td>
</tr>
<tr>
<td className="sample-td"> Enter your name: </td>
<td className="sample-td">
<InPlaceEditorComponent ref={(text) => { this.inplaceEditorObj = text; }} id='dynamicEdit' mode='Inline' value='Andrew' enableEditMode={true} actionOnBlur='Ignore' model={this.model}/>
</td>
</tr>
</table>
</div>);
}
}
export default App;
import { ChangeEventArgs, CheckBoxComponent } from '@syncfusion/ej2-react-buttons';
import { InPlaceEditorComponent } from '@syncfusion/ej2-react-inplace-editor';
import * as React from 'react';
import './App.css';
class App extends React.Component<{},{}> {
public inplaceEditorObj: InPlaceEditorComponent;
public checkboxObj: CheckBoxComponent;
public model = { placeholder: 'Enter some text' };
public onChange(e: ChangeEventArgs): void {
(this.inplaceEditorObj as any).enableEditMode = e.checked;
this.inplaceEditorObj.dataBind();
}
public render() {
return (
<div id='container'>
<table className="table-section">
<tbody>
<tr>
<td> EnableEditMode: </td>
<td>
<CheckBoxComponent id='enable' label='Enable' checked={true} change={ this.onChange = this.onChange.bind(this) }/>
</td>
</tr>
<tr>
<td className="sample-td"> Enter your name: </td>
<td className="sample-td">
<InPlaceEditorComponent ref={(text) => { this.inplaceEditorObj = text! }} id='dynamicEdit' mode='Inline' value='Andrew' enableEditMode={true} actionOnBlur='Ignore' model={this.model} />
</td>
</tr>
</tbody>
</table>
</div>
);
}
}
export default App;
[Functional-component]
import { CheckBoxComponent } from '@syncfusion/ej2-react-buttons';
import { InPlaceEditorComponent } from '@syncfusion/ej2-react-inplace-editor';
import * as React from 'react';
import './App.css';
function App() {
let inplaceEditorObj;
let checkboxObj;
let model = { placeholder: 'Enter some text' };
function onChange(e) {
inplaceEditorObj.enableEditMode = e.checked;
inplaceEditorObj.dataBind();
}
return (<div id='container'>
<table className="table-section">
<tr>
<td> EnableEditMode: </td>
<td>
<CheckBoxComponent id='enable' label='Enable' checked={true} change={onChange = onChange.bind(this)}/>
</td>
</tr>
<tr>
<td className="sample-td"> Enter your name: </td>
<td className="sample-td">
<InPlaceEditorComponent ref={(text) => { inplaceEditorObj = text; }} id='dynamicEdit' mode='Inline' value='Andrew' enableEditMode={true} actionOnBlur='Ignore' model={model}/>
</td>
</tr>
</table>
</div>);
}
export default App;
import { ChangeEventArgs, CheckBoxComponent } from '@syncfusion/ej2-react-buttons';
import { InPlaceEditorComponent } from '@syncfusion/ej2-react-inplace-editor';
import * as React from 'react';
import './App.css';
function App () {
let inplaceEditorObj: InPlaceEditorComponent;
let checkboxObj: CheckBoxComponent;
let model = { placeholder: 'Enter some text' };
function onChange(e: ChangeEventArgs): void {
(inplaceEditorObj as any).enableEditMode = e.checked;
inplaceEditorObj.dataBind();
}
return (
<div id='container'>
<table className="table-section">
<tr>
<td> EnableEditMode: </td>
<td>
<CheckBoxComponent id='enable' label='Enable' checked={true} change={ onChange = onChange.bind(this) }/>
</td>
</tr>
<tr>
<td className="sample-td"> Enter your name: </td>
<td className="sample-td">
<InPlaceEditorComponent ref={(text) => { inplaceEditorObj = text! }} id='dynamicEdit' mode='Inline' value='Andrew' enableEditMode={true} actionOnBlur='Ignore' model={model} />
</td>
</tr>
</table>
</div>
);
}
export default App;