我需要在所有浏览器中为 React 中的受控输入制作本地浏览器表单自动完成功能(目前仅适用于 chrome)。
下面的代码片段来自 React Form 文档。(https://reactjs.org/docs/forms.html)。我只向 input 元素添加了 name 属性。可以在https://codepen.io/DChuhin/pen/ZNmdWj上运行的完整示例
因此,在代码笔中执行步骤后:1) 输入任何值 2) 提交提供的值 3) 提交后开始输入相同的值:在 chrome 中我可以看到我以前的输入作为自动完成选项,但在其他浏览器中它不起作用。
class NameForm extends React.Component {
constructor(props) {
super(props);
this.state = {value: ''};
this.handleChange = this.handleChange.bind(this);
this.handleSubmit = this.handleSubmit.bind(this);
}
handleChange(event) {
this.setState({value: event.target.value});
}
handleSubmit(event) {
alert('A name was submitted: ' + this.state.value);
event.preventDefault();
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<label>
Name:
<input name="testName" type="text" value={this.state.value} onChange={this.handleChange} />
</label>
<input type="submit" value="Submit" />
</form>
); …Run Code Online (Sandbox Code Playgroud)