程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了允许 HTML 表单验证但一旦完成就停止提交大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决允许 HTML 表单验证但一旦完成就停止提交?

开发过程中遇到允许 HTML 表单验证但一旦完成就停止提交的问题如何解决?下面主要结合日常开发的经验,给出你关于允许 HTML 表单验证但一旦完成就停止提交的解决方法建议,希望对你解决允许 HTML 表单验证但一旦完成就停止提交有所启发或帮助;

我知道一种阻止表单提交的方法,但是即使表单没有通过 HTML 验证,我也有一个单击事件到提交​​按钮并触发它。@H_502_1@

<form ID="signupform" class="signupform" onsubmit="(E)=>{e.preventDefault()};return false">

</form>

我的目标是以任何一种方式停止页面刷新(无论是否验证),但仍允许先运行内置验证。@H_502_1@

有什么建议吗?@H_502_1@

解决方法

submit 按钮的作用是触发 submitform 事件。因此,对于 form 元素,您无需在 click 按钮上设置 submit 事件,而是在 submit 上设置 form 事件处理程序。

然后,为了在混合中引入验证,您可以停止本机 submit 在处理程序中发生,仅当验证失败时。这是通过访问自动发送到每个 DOM 事件处理程序 * 的 event 参数来完成的(有关警告,请参阅下一段)。您可以使用 event.preventDefault() 方法阻止本机事件发生。

*最后一个音符,the use of inline HTML event handling attributes such as onsubmit and onclick is to be avoided。这是我们在制定标准之前使用的 25 年以上的技术,不幸的是,因为它们看起来很容易使用,所以它们会被不知道更好的新开发人员复制。有真正的理由不使用它们,而您偶然发现了其中之一。 事件处理函数的 e 参数没有像您认为的那样填充对 event 的引用。这仅在您使用现代标准方式设置事件回调,即 .addEventListener()

// Set up a submit event handler for the form
// not a click event handler for the button because
// clicking a submit button triggers the form's submit event
document.querySELEctor("form").addEventListener("submit",function(event){
  if(document.querySELEctor("input").value === ""){
    // Invalid data! Stop the submit!
    event.preventDefault();
    alert("Please fill in all fields!");
    return;
  }

  // If the code reaches this point,validation succeeded
  console.log("Form submitted");
});
<form action="https://example.com" method="post">
  <input>
  <button>Submit</button>

</form>

大佬总结

以上是大佬教程为你收集整理的允许 HTML 表单验证但一旦完成就停止提交全部内容,希望文章能够帮你解决允许 HTML 表单验证但一旦完成就停止提交所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:允许