<div className="form-group">
<label className="col-sm-0 control-label"> Name : </label>
<input
type="text"
value={this.state.UserName}
onChange={this.handleChangeUserName}
placeholder="Name"
pattern="[A-Za-z]{3}"
className="form-control"
/>
</div>
嗨,我正在尝试使用模式验证来验证 React 中的表单输入字段。但它不起作用。我正在使用简单的验证 pattern="[A-Za-z]{3}"
。
请让我知道如何解决这个问题。将验证放入 React Bootstrap 组件中。
原文由 developer_beginning 发布,翻译遵循 CC BY-SA 4.0 许可协议
您正在使用
input
元素的 value 属性(表示受控组件)并在onChange
方法中更新状态,因此您可以在onChange
中轻松测试此正则表达式仅当输入有效时才更新状态。像这样:
检查工作代码:
检查
jsfiddle
的工作示例: https ://jsfiddle.net/uL4fj4qL/11/检查这个
jsfiddle
,Material-Ui snackbar
添加以显示错误,如果用户尝试输入错误的值: https ://jsfiddle.net/4zqwq1fj/