event.preventDefault() 在提交按钮函数中究竟做了什么?

sta*_*lei 7 javascript events submit dom-events

学习React,我知道这个问题不是其中的一部分,但我一直想知道 preventDefault 部分的作用是什么:

  handleSubmit(event) {
    alert('A name was submitted: ' + this.state.value);
    event.preventDefault();
  }
Run Code Online (Sandbox Code Playgroud)

当我在页面中打开示例并删除 preventDefault 时,当我点击提交时页面不会刷新。那么这是否意味着点击提交按钮的默认行为是将表单数据发送到某个地方,然后将当前页面重定向到其他地方?通过使用 preventDefault,这可以防止它发生?这个事件是一个 Dom 事件吗?

Muh*_*sim 5

event.preventDefault()基本上可以防止事件触发。在submit事件的情况下。event.preventDefault()将阻止您的表单提交。

我们通常会阻止submit在提交表单之前检查某些验证的行为,或者我们需要更改输入字段的值,或者我们想使用ajax调用提交。为此,我们防止使用以下方式提交表单:

event.preventDefault();
// Here comes our custom logic
Run Code Online (Sandbox Code Playgroud)

是一个很好的阅读你的问题。希望这可以帮助 :)