瀏覽代碼

Let ‘button of save’ & ‘button of cancel’ have a opportunity to be used -- Advanced Form (#864)

* 让保存  取消 按钮有点击的机会

* Update TableForm.js

delete
wunayou 8 年之前
父節點
當前提交
6b7221c263
共有 1 個文件被更改,包括 3 次插入10 次删除
  1. 3 10
      src/routes/Forms/TableForm.js

+ 3 - 10
src/routes/Forms/TableForm.js

@@ -72,12 +72,7 @@ export default class TableForm extends PureComponent {
     this.setState({
       loading: true,
     });
-    // save field when blur input
     setTimeout(() => {
-      if (document.activeElement.tagName === 'INPUT' &&
-          document.activeElement !== e.target) {
-        return;
-      }
       if (this.clickedCancel) {
         this.clickedCancel = false;
         return;
@@ -110,6 +105,7 @@ export default class TableForm extends PureComponent {
       delete this.cacheOriginData[key];
     }
     this.setState({ data: newData });
+    this.clickedCancel = false;
   }
   render() {
     const columns = [{
@@ -124,7 +120,6 @@ export default class TableForm extends PureComponent {
               value={text}
               autoFocus
               onChange={e => this.handleFieldChange(e, 'name', record.key)}
-              onBlur={e => this.saveRow(e, record.key)}
               onKeyPress={e => this.handleKeyPress(e, record.key)}
               placeholder="成员姓名"
             />
@@ -143,7 +138,6 @@ export default class TableForm extends PureComponent {
             <Input
               value={text}
               onChange={e => this.handleFieldChange(e, 'workId', record.key)}
-              onBlur={e => this.saveRow(e, record.key)}
               onKeyPress={e => this.handleKeyPress(e, record.key)}
               placeholder="工号"
             />
@@ -162,7 +156,6 @@ export default class TableForm extends PureComponent {
             <Input
               value={text}
               onChange={e => this.handleFieldChange(e, 'department', record.key)}
-              onBlur={e => this.saveRow(e, record.key)}
               onKeyPress={e => this.handleKeyPress(e, record.key)}
               placeholder="所属部门"
             />
@@ -181,7 +174,7 @@ export default class TableForm extends PureComponent {
           if (record.isNew) {
             return (
               <span>
-                <a>保存</a>
+                <a onClick={e => this.saveRow(e, record.key)}>添加</a>
                 <Divider type="vertical" />
                 <Popconfirm title="是否要删除此行?" onConfirm={() => this.remove(record.key)}>
                   <a>删除</a>
@@ -191,7 +184,7 @@ export default class TableForm extends PureComponent {
           }
           return (
             <span>
-              <a>保存</a>
+              <a onClick={e => this.saveRow(e, record.key)}>保存</a>
               <Divider type="vertical" />
               <a onClick={e => this.cancel(e, record.key)}>取消</a>
             </span>