Javascript 防止对提交表单做出默认反应

Javascript 防止对提交表单做出默认反应,javascript,reactjs,forms,dom-events,react-bootstrap,Javascript,Reactjs,Forms,Dom Events,React Bootstrap,我正在react中处理登录表单,在阻止表单的默认行为时遇到问题。 我的代码: \u提交:函数(e){ 警报(“llego1!”); e、 预防默认值(); 警报(“llego2!”); this.setState({errors:[]}); var email=this.state.emailValue.trim(); var password=this.state.passValue.trim(); 如果(!电子邮件| |!密码){ 返回; } console.log(“onSubmit”);

我正在react中处理登录表单,在阻止表单的默认行为时遇到问题。 我的代码:

\u提交:函数(e){
警报(“llego1!”);
e、 预防默认值();
警报(“llego2!”);
this.setState({errors:[]});
var email=this.state.emailValue.trim();
var password=this.state.passValue.trim();
如果(!电子邮件| |!密码){
返回;
}
console.log(“onSubmit”);
SessionActionCreators.login(电子邮件、密码);
},
render:function(){
返回(
);
}
第一个和第二个警报不会触发,这意味着函数可能没有被正确调用,但我在文档中读到支持
onSubmit
,我还在表单上使用react引导。表单的默认行为(对服务器的get请求)仍在执行中,任何帮助都会很好

编辑:我正在使用React.createClass


Edit2:尝试使用
登录
,仍然是默认行为。

为了回答我自己的问题,代码正常工作,我在工作目录上的另一个文件中修复了一个配置问题。

您是否使用
es6类
React.createClass
创建组件?您是否尝试过按钮而不是按钮输入?您的
看起来怎么样?我要试试Button@JanKlimo。ButtonInput是一个react引导组件,您可以在这里检查它:console中有错误吗?
 _onSubmit: function(e) {
    alert("llego1!");
    e.preventDefault();
    alert("llego2!");
    this.setState({ errors: [] });
    var email = this.state.emailValue.trim();
    var password = this.state.passValue.trim();
    if ( !email || !password) {
      return;
    }
    console.log("onSubmit");
    SessionActionCreators.login(email, password);
  },

render: function() {
    return (
      <div>
        <form onSubmit={this._onSubmit} style={formStyle}>
          <Input type="text" placeholder="Email" value={this.state.emailValue} onChange={this._EmailChange}/>
          <Input type="password" placeholder="Password" value={this.state.passValue} onChange={this._PassChange}/>
          <ButtonInput type="submit" value="Login" />
        </form>
      </div>
    );
  }