当前位置: 首页 > 知识库问答 >
问题:

javascript - 请问如何调用 form input 的检查机制,而不要 submit 跳转页面?

洪弘亮
2023-12-04

请问如何调用 form input 的检查机制,而不要 submit 跳转页面?

目前调用 js 的 submit 方法,浏览器会检查 input 的条件像是 require, min, max 等
但是假如检查都通过会 submit 跳转页面
想要不跳转 URL 页面,也能检查,自动会 scroll 到有问题 input,并跳出浏览器自带的提示词

共有3个答案

邹曦之
2023-12-04

如果你只想要表单启动校验机制,但不希望提交表单,可以侦听表单的 submit 事件,然后 event.preventDefault()。这样浏览器会检查表单元素,并给出对应的提示。

如下:

form.addEventListener('submit', event => {  event.preventDefault();  // 做你其它想做的事情});
谷星文
2023-12-04

那你直接用表单验证组件吧 https://element.eleme.cn/#/zh-CN/component/form
1701666924208.png

龙佐
2023-12-04

满足验证后自动跳转页面(提交表单)这本来就是符合预期的行为呀,按你的需求,表单就提交不出去了。

当然有办法,在 form 的 submit 事件里面阻止默认行为(成功时提交表单)就好了,未通过验证的是不会进入到 submit 事件的。

<form action="" id="form1">    <input type="text" required>    <input type="submit"></form><script>    const form1 = document.querySelector('#form1');    form1.addEventListener('submit', function (ev) {        ev.preventDefault();        console.log('通过验证');    });</script>

如果你想要手动验证表单/输入框(任何时候),可以使用表单/输入框的方法(checkValidity/reportValidity)

console.log(myform.checkValidity()); // return boolean , true if form is valid, false if anything is invalid in the formconsole.log(myform.reportValidity()); // will throw error explaining why  `form.checkValidity()` returning false
  • javascript - How to use HTML form.checkValidity()? - Stack Overflow
  • HTMLFormElement: reportValidity() method - Web APIs | MDN
  • HTMLInputElement: checkValidity() method - Web APIs | MDN
 类似资料:
  • 有多个菜单页面,页面上方都有查询,封装了查询组件,切换页面的时候要重置查询条件-searchObj 我用pinia来存查询条件,searchObj,然后每个页面监听searchObj,条件变化就发起查询 问题是: 当我切换页面的时候把查询条件重置,这时候就会触发当前页面的watch,然后发起查询,就是跳转前就发起了查询 请问怎么解决这种问题,或者怎么这样的布局还有什么其他方法实现

  • 问题内容: 我在使用ngResource调用Amazon Web Services上的REST API时遇到此错误: XMLHttpRequest无法加载http://server.apiurl.com:8000/s/login?login=facebook。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许访问源“h

  • 问题: 前端如何跳转页面路径 ? 我尝试使用了路由的语法, 但是没有跳转

  • 页面跳转可以是打开新的一页,也可以是当前页重定向,还可以是跳转到当前页的某个状态,下面会从打开w文件,打开其它后缀文件,使用路由等几个方面分别介绍一下在X5中的页面跳转。 目录 1、打开w文件 1.1、使用Shell提供的方法 1.2、使用弹出窗口打开 1.3、模拟门户的做法 2、打开html等其它类型的文件 2.1、使用打开w文件的方法 2.2、使用a链接跳转 2.3、页面重定向 2.4、使用w

  • 页面跳转可以是打开新的一页,也可以是当前页重定向,还可以是跳转到当前页的某个状态,下面会从打开w文件,打开其它后缀文件,使用路由等几个方面分别介绍一下在X5中的页面跳转。 目录 1、打开w文件 1.1、使用Shell提供的方法 1.2、使用弹出窗口打开 1.3、模拟门户的做法 2、打开html等其它类型的文件 2.1、使用打开w文件的方法 2.2、使用a链接跳转 2.3、页面重定向 2.4、使用w