HTML5利用约束验证API来检查表单的输入数据的代码实例

HTML5利用约束验证API来检查表单的输入数据是一种很方便的方式,它可以确保用户输入的数据符合指定的格式,提高了表单提交的成功率。下面是实现此功能的完整攻略:

1. HTML表单代码结构

首先,我们需要在HTML页面中编写表单元素。表单元素应该包含一系列表单控件,例如文本输入框、单选按钮、复选框、下拉列表等元素。在提交表单数据之前需要添加以下代码结构,其中包括验证角色和验证规则:

<input type="text" name="username" required minlength="3" maxlength="10" pattern="[A-Za-z]{3,10}" title="用户名必须为3-10个字母">

上面的代码意思是:用户名文本输入框中必填,长度必须为3到10之间的字母,只包含大小写字母,提示标题为:"用户名必须为3-10个字母"。

2. JavaScript代码实现

接下来,在JavaScript中添加验证功能的代码,这里我们使用了约束验证API。代码如下:

var forms = document.getElementsByTagName("form");
for (var i = 0; i < forms.length; i++) {
    forms[i].addEventListener("submit", function (event) {
        if (this.checkValidity() === false) {
            event.preventDefault();
            event.stopPropagation();
        }
        this.classList.add("was-validated");
    }, false);
}

上面的代码意思是:获取所有页面上的表单,遍历表单,针对每个表单注册submit事件。检查表单的有效性,如果一个控件不满足验证条件,则阻止表单提交,并阻止事件向上传播。如果所有控件都满足条件,则添加样式“was-validated”,告知用户验证已经成功。

3. 完整代码实例

结合以上两部分内容,我们可以得到一个完整的HTML代码实例,如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>HTML5约束验证API演示</title>
</head>
<body>

    <form class="needs-validation" novalidate>
        <div class="form-group">
            <label for="username">用户名:</label>
            <input type="text" class="form-control" id="username" required minlength="3" maxlength="10" pattern="[A-Za-z]{3,10}" title="用户名必须为3-10个字母">
            <div class="valid-feedback">有效</div>
            <div class="invalid-feedback">用户名必须为3-10个字母,且只包含字母</div>
        </div>
        <button type="submit">提交</button>
    </form>

    <script>
        var forms = document.getElementsByTagName("form");
        for (var i = 0; i < forms.length; i++) {
            forms[i].addEventListener("submit", function (event) {
                if (this.checkValidity() === false) {
                    event.preventDefault();
                    event.stopPropagation();
                }
                this.classList.add("was-validated");
            }, false);
        }
    </script>
</body>
</html>

上面代码中,我们创建了一个表单,其中包含了一个用户名文本输入框,规定必须为3到10之间的字母,不受大小写限制,顶部提示标题。

JavaScript代码中,我们为表单添加了事件监听器,当用户点击提交按钮时,表单数据进行验证,验证完毕时根据验证是否通过来阻止表单提交,并添加样式“was-validated”。

如果用户输入不符合限制要求,就会显示一个红色的弹出框,告知用户输入无效。

至此,我们完成了整个HTML页面的表单数据验证功能。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:HTML5利用约束验证API来检查表单的输入数据的代码实例 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • CSS实例:超酷的网站导航按钮

    对于“CSS实例:超酷的网站导航按钮”这个主题,我给出完整的攻略如下: 1. 确定HTML结构 首先我们要对需要制作的超酷的导航按钮的HTML结构进行设计,这里我们可以先采用一个简单的ul-li结构: <ul> <li><a href="#">Home</a></li> <…

    css 2023年6月10日
    00
  • css(display,float,position)深入理解

    CSS(display, float, position)深入理解 一、display属性 display 属性用于控制 HTML 元素的显示方式。它有以下常用的取值: block :元素以块级格式显示,元素宽度默认为整个父元素宽度,在不设置 width 的情况下,元素会自动把剩余的空间填满; inline :元素以行内格式显示,元素宽度默认为包含的内容宽度…

    css 2023年6月9日
    00
  • CSS中妙用 drop-shadow 实现线条光影效果

    CSS中妙用drop-shadow实现线条光影效果的攻略可以分为以下几步进行实现: 第一步:创建一个具有线条样式的基础元素 首先,我们需要创建一个具有线条样式的基础元素,例如一条横线。在HTML中,可以这样写: <div class="line"></div> 在CSS中,我们为这个元素设置宽度、高度、背景颜色等属…

    css 2023年6月11日
    00
  • 详解如何用div实现自制滚动条

    使用 div 实现自制滚动条是一种常见的前端技巧,可以帮助开发者实现更加灵活的滚动效果。本文将提供一些关于如何使用 div 实现自制滚动条的方法,包括使用 CSS 和 JavaScript 的示例说明。 使用 CSS 使用 CSS 实现自制滚动条的步骤如下: 创建一个包含内容的 div 元素,并设置其 overflow 属性为 auto。 创建一个滚动条的 …

    css 2023年5月18日
    00
  • CSS教程:彻底弄懂闭合浮动元素

    针对“CSS教程:彻底弄懂闭合浮动元素”这个主题,我来为大家进行详细讲解,这个教程中我们主要了解如何使用CSS来关闭浮动元素,防止浮动元素对后续元素产生影响。 为什么要关闭浮动元素 在HTML中,我们常常使用浮动元素来进行布局,这是一种非常高效的布局方式,可以实现页面的各种结构和效果。但是,如果不正确地使用浮动,就会产生一些问题,如: 浮动元素会对其他元素产…

    css 2023年6月10日
    00
  • CSS实现鼠标移至图片上显示遮罩层效果

    下面我将详细讲解如何使用CSS实现鼠标移至图片上显示遮罩层的效果,步骤如下: 步骤一:HTML 结构 首先,我们需要在HTML文件中创建一个 元素并在其中添加一个 元素。如下所示: <div class="wrapper"> <img src="https://example.com/image.jpg&quo…

    css 2023年6月10日
    00
  • css实现文字垂直居中的代码第1/2页

    当需要将文字垂直对齐到容器中心时,可以使用CSS的flexbox布局或者行高+伪元素的方式实现。下面分别对这两种方法进行说明。 方法一:flexbox布局 Flexbox布局允许我们通过align-items属性将元素的内容垂直居中。具体实现方式如下: 创建一个容器元素,并设置display为flex以启用flexbox布局。 通过align-items属性…

    css 2023年6月9日
    00
  • 在vue项目中引入scss并使用scss样式详解

    下面是「在Vue项目中引入SCSS并使用SCSS样式详解」的完整攻略。 第一步:安装依赖 首先,通过npm安装需要用到的依赖: npm install –save-dev sass-loader sass 其中,sass-loader用于将SCSS代码转换为CSS,sass则是sass-loader的依赖。 第二步:配置webpack 接下来,在webpa…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部