【发布时间】:2017-04-19 06:26:28
【问题描述】:
<Form onSubmit={this.onSubmit} ref="Form">
<Form.Input label="First Name" name="firstName" type='text' required />
</Form>
目前,如果 firstName 字段为空,则会显示 html5 验证的弹出窗口。但是,我想在所有无效字段周围显示红色边框。
【问题讨论】:
<Form onSubmit={this.onSubmit} ref="Form">
<Form.Input label="First Name" name="firstName" type='text' required />
</Form>
目前,如果 firstName 字段为空,则会显示 html5 验证的弹出窗口。但是,我想在所有无效字段周围显示红色边框。
【问题讨论】:
您只需要删除所需的 html5 属性并检查 onSubmit 函数是否有任何输入。
如果你想显示红色边框,只需在你的文本字段中添加一个类。
<Form onSubmit={this.onSubmit} ref="Form">
<Form.Input label="First Name" className={this.state.inputClass} name="firstName" type='text' required />
</Form>
并通过应用 if 条件在 onSubmit() 函数上管理这个 className
onSubmit(e){
e.preventDefault();
if(! whatever your condition is to check whether name is valid or not)
this.setState({
inputClass: "invalid"
})
}
你的无效会像
.invalid{
border:1px solid #ff0000
}
希望这会有所帮助:)
【讨论】: