0
問題是如果我可以通過輸入元素捕獲,如果他已經提交 沒有通過任何道具,因爲我不能改變代碼體系結構像設置 一個this.state或創建另一個文件管理這個,這就是爲什麼我需要輸入 自己認識到他已經提交,所以他可以運行它自己的字段的verifyField方法來添加類hasError並顯示CSS。輸入檢測表單提交使用反應
我有一個之情況,其中i有3個文件,形狀group.js僅呈現輸入 html元素並具有確認的功能,Register.js是反應成分 其中i將使所有的輸入字段使用form-group.js組件和 最後一個文件是Modal.js,其中的提交按鈕位於。代碼如下所示:
形式,group.js
import React from 'react';
class FormGroup extends React.Component {
verifyField(validations) {
// Code to verify the field if null and set className
const hasError = 'hasError'
}
render() {
return (
<div>
<input id="myform" onSubmit={// Try to run verifyField(this.props.validations) when submitted but onSubmit only works in the form element} className={`${hasError}`} ></input>
</div>
)
}
}
Register.js
import React from 'react';
import FormGroup from './form-group.js'
class Register extends React.Component {
render() {
return (
<div>
<form name="form" id="form">
<FormGroup>
required
name='Full Name'
validations={validations}
</FormGroup>
<FormGroup>
required
name='Mother Name'
validations={validations}
</FormGroup>
<FormGroup>
required
name='Nickname'
validations={validations}
</FormGroup>
<form/>
</div>
)
}
}
Modal.js
import React from 'react';
import Register from './Register.js'
class Modal extends React.Component {
render() {
return (
<div>
<Register />
<button form="form">Submit</button>
</div>
)
}
}
從我在這裏讀的https://facebook.github.io/react/docs/forms.html它似乎像onSubmit通常只在窗體組件。我想如果你需要的只是數據驗證,你可以嘗試通過做這樣的事情來實現實時輸入驗證。' – kdenz
嗨,謝謝你的回覆,這個代碼的問題是,當輸入具有onSubmit屬性時,它會自動調用它,如果我寫:' console.log('This is not shown on submit')} />'Call on render:
是的,它只適用於表單組件,但我需要一些方法在'input'中實現它。是否有按鈕發送的任何屬性,我可以捕獲或類似的東西? –