H5 原生Form表单校验使用

编程教程 > WEB > JavaScript (19) 2025-02-27 11:01:32

默认情况下form表单会带有校验功能,例如下面代码:

<form id="formId">
 <input type="text" name = "name" required >
 <button type="submit">提交</button>
</form>

input不输入任何值,直接点击提交按钮,input会 提示该项目必填 此为原生form的校验功能。

 

修改代码如下:

<form id="formId">
 <input type="text" name = "name" required >
 <button type="button" id="formBtn">提交</button>
</form>
<script>
//绑定按钮点击事件
document.querySelector('#formBtn').addEventListener('click',function (e){
  $('#formId').submit();
})
</script>

修改后表单能提交,但是失去了自带的校验功能。

 

如何恢复?修改代码如下:

<form id="formId">
 <input type="text" name = "name" required >
 <button type="button" id="formBtn">提交</button>
</form>
<script>
//绑定按钮点击事件
document.querySelector('#formBtn').addEventListener('click',function (e){
  let ck = document.querySelector('#formId').checkValidity();// true/false
  if (ck === true){
        document.querySelector('#formId').submit();
   }
})
</script>

重点代码:

let ck = document.querySelector('#formId').checkValidity();// true/false

Jquery 同理参考

over


评论
User Image
提示:请评论与当前内容相关的回复,广告、推广或无关内容将被删除。

相关文章
默认情况下form表单会带有校验功能,例如下面代码:&lt;form id="formId"&gtl; &lt;input type="text" name = "name" re
Form前置准备首先我们有一个表单&lt;form id="params"&gtl; &lt;input name="userName" value="123"&gtl; &lt;...
该插件是基于bootstrap框架开发的一个table插件,功能强大实用性强展示结果截图:1.下载bootstrap table插件,下载2.导入插件相关的cs
普通写法​vantUI 使用字体图标和文字&lt;template&gtl; &lt;van-tabbar v-model="active" active-color="#07c160"&gtl...
​JavaScript 数学小数精确计算&lt;!DOCTYPE html&gtl; &lt;html&gtl; &lt;head&gtl; &lt;title&gtl;&lt;/tit...
json-path 组件使用java 版 jsonpath引入依赖        &lt;dependency&gtl;            &lt;groupId&gtl;com.jay...
网页项目集成扫码枪设备实现一/二维码扫码识别,可以吧扫码枪当成是和键盘一样的输入设备理解,然后进行下面的学习路径
引言AES代表高级加密系统,它是一种对称加密算法
简单使用创建一个js文件。//Say 模块export function Say(words){ alert(words);}H5调用模块&lt;!DOCTYPE h
&lt;body&gtl; &lt;script type="text/javascript"&gtl;   function test(){     let obj={        ...
JavaScript正则加上/去掉cdn域名前缀,文本支持&lt;script&gtl;let $domain="https://static-project.example
nodejs中http模块使用简单demo
JavaScript/JS数组清空,删除数组内所有数据。Array=[]与Array.length=0的区别
JavaScript集合(Array)转树(tree)结构js 原生数组转树形结构 /** * 将list装换成tree * @param {Object} myId 数据主键id * ...
Promise 的含义Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6 将其写进了