Javascript 如何在reactjs中以编程方式触发onsubmit事件?
我需要在单击div元素时以编程方式调用表单的onsubmit事件。我不想实际提交表格。我只想打电话给onSubmit事件。我如何做到这一点Javascript 如何在reactjs中以编程方式触发onsubmit事件?,javascript,reactjs,Javascript,Reactjs,我需要在单击div元素时以编程方式调用表单的onsubmit事件。我不想实际提交表格。我只想打电话给onSubmit事件。我如何做到这一点 <form onSubmit={(event)=> {event.preventDefault();this.submitFunction()}> <ButtonWithIcon onClick={this.onClick} type="submit"> </div> </form> on
<form onSubmit={(event)=> {event.preventDefault();this.submitFunction()}>
<ButtonWithIcon onClick={this.onClick} type="submit">
</div>
</form>
onClick=()=> { //need to call the call the onsubmit event }
找一个例子。关键是将事件处理程序附加到提交表单的div,即somediv
从“React”导入React;
从“react dom”导入{render};
类NameForm扩展了React.Component{
建造师(道具){
超级(道具);
this.state={value::};
this.handleChange=this.handleChange.bind(this);
this.handleSubmit=this.handleSubmit.bind(this);
}
手变(活动){
this.setState({value:event.target.value});
}
handleSubmit(事件){
警报(“已提交名称:“+this.state.value”);
event.preventDefault();
}
render(){
返回(
某个部门
姓名:
);
}
}
render(,document.getElementById(“根”));
您可以发布您的解决方案吗?即使它不起作用?我们不会在这里为您编码…
但是您可以在onSubmit中执行event.preventDefault(),然后您可以调用任何想要的函数,或者让onSubmit的事件执行某些操作?onSubmit=(e)=>{e.preventDefault;console.log(e)}
{(event)=> {event.preventDefault();this.submitFunction()} to execute
import React from "react";
import { render } from "react-dom";
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}>
<div onClick={this.handleSubmit}>SOME DIV</div>
<label>
Name:
<input
type="text"
value={this.state.value}
onChange={this.handleChange}
/>
</label>
<input type="submit" value="Submit" />
</form>
);
}
}
render(<NameForm />, document.getElementById("root"));