Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何在React中从表单获取数据_Reactjs - Fatal编程技术网

Reactjs 如何在React中从表单获取数据

Reactjs 如何在React中从表单获取数据,reactjs,Reactjs,我的React站点上有一个表单,我正在尝试获取用户输入的数据。我遵循了文档和类似的堆栈溢出帖子,当我按下submit按钮时,会收到警告消息。但是,它不允许我在输入字段中键入任何内容 我的代码: class Search extends Component { constructor(props) { super(props); this.state = { value: "" }; this.handleSubmit

我的React站点上有一个表单,我正在尝试获取用户输入的数据。我遵循了文档和类似的堆栈溢出帖子,当我按下submit按钮时,会收到警告消息。但是,它不允许我在输入字段中键入任何内容

我的代码:

class Search extends Component {
    constructor(props) {
        super(props);
        this.state = { value: "" };

        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 (
            <div className="Search">
                <form className="searchBox" onSubmit={this.handleSubmit}>
                    <input type="text" value={this.state.value}/>
                    <input type="submit" value="Go" />
                </form>
            </div>
        );
    }
}
类搜索扩展组件{
建造师(道具){
超级(道具);
this.state={value::};
this.handleSubmit=this.handleSubmit.bind(this);
}
手变(活动){
this.setState({value:event.target.value});
}
handleSubmit(事件){
警报(“已提交名称:”+this.state.value);
event.preventDefault();
}
render(){
返回(
);
}
}

如果您使用默认的react表单设置,那么您需要为每个输入字段使用onChange处理程序,并维护这些字段的状态,但我认为您应该使用
Formik
,因为它提供了比默认的react表单设置更多的功能以及表单验证。 但是给你一个问题的答案-
对输入字段使用onChange handler,并在提交过程中访问这些输入处理程序状态。

如果您使用react的默认表单设置,那么您需要对每个输入字段使用onChange handler,还需要维护这些字段的状态,但我认为您应该使用
Formik
,因为它提供了更多的功能而不是默认的react表单设置和表单验证。 但是给你一个问题的答案-
对输入字段使用onChange处理程序,并在提交过程中访问这些输入处理程序状态。

您忘记在输入元素-->
@Yousaf上添加
onChange
事件处理程序,我想我忘了什么,谢谢您忘了在输入元素-->
@Yousaf上添加
onChange
事件处理程序,我想我忘了什么,谢谢