2017-03-13 45 views
0

我做一個簡單的表格,我想按下回車鍵的時候採取行動,但由於某種原因,它只能代替第一陣營引導形式只提交一份關於第二個進入按

進入新聞界,

渲染()的組件:

render() { 
    return (
     <form onSubmit={this.handleSubmit}> 
      <FormGroup controlId="formBasicText"> 
       <ControlLabel>MyLabel</ControlLabel> 
       <FormControl 
        type="text" 
        value={this.state.value} 
        placeholder="Enter something" 
        onChange={this.handleChange} 
       /> 
       <FormControl.Feedback /> 
      </FormGroup> 
     </form> 
    ); 
} 

handleSubmit():

handleSubmit(e) { 
    e.preventDefault(); 
    myMethod({this.state.value}); 
} 

這是爲什麼僅在第二工作進入按?

編輯:要清楚,這只是目標代碼的一個子集。試圖運行這個當然會失敗。我只是認爲在對象的渲染或handleSubmit方法中可能出現的錯誤都是可能的。

以防萬一,這裏是構造函數:

constructor(props) { 
    super(props); 
    this.state = { 
     value: "", 
    }; 
    this.handleChange = this.handleChange.bind(this); 
    this.handleSubmit = this.handleSubmit.bind(this); 
} 
+0

看起來就像是愛上'myMethod的({} this.state.value)後誤差;'。您是否嘗試調試或檢查控制檯輸出? – degr

+0

這是我的代碼的減少版本,我只展示了我認爲可能對錯誤負責的部分。構造函數不在這裏,也不是一些有趣的方法。我的方法沒有在我在這裏介紹的內容中定義,所以當然如果你試圖運行這個代碼,它會失敗。一切正常。控制檯正在記錄,沒有錯誤。它只是它的作用*第二*進入新聞。 – mstorkson

+0

組件外的任何東西都可以調用'event.preventDefault()'進入keypress嗎?我的意思是,是否會發生,如果你將只有你的組件在應用程序? – degr

回答