``` // ...其他方法保持不变... ```
时间: 2024-12-23 17:11:29 浏览: 15
```javascript
// 定义一个函数,用于检查用户输入是否符合要求
function validateInput(input) {
if (typeof input !== 'string' || !/^[a-zA-Z0-9]+$/.test(input)) {
return false;
}
return true;
}
// 创建一个表单组件
class InputForm extends React.Component {
state = { inputValue: '' };
handleChange = (e) => {
const { value } = e.target;
this.setState({ inputValue: validateInput(value) ? value : '' });
}
handleSubmit = (e) => {
e.preventDefault();
if (this.state.inputValue) {
console.log('Valid input:', this.state.inputValue);
// 在这里可以进一步处理或发送数据到服务器
} else {
alert('Please enter a valid input.');
}
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<label>
Input:
<input type="text" value={this.state.inputValue} onChange={this.handleChange} />
</label>
<button type="submit">Submit</button>
</form>
);
}
}
export default InputForm;
```
这个代码片段定义了一个React组件`InputForm`,它包含一个文本输入框和提交按钮。当用户输入内容并点击提交时,会调用`handleChange`函数来验证输入是否有效(只允许字母和数字)。如果输入无效,则清除输入值;如果输入有效,则在控制台打印出来,并可以在实际应用中继续处理或发送数据。注意,这只是一个基本的示例,实际开发中可能还需要添加更多的错误提示和处理逻辑。
阅读全文