js+html制作简单验证码

制作简单验证码需要使用HTML和JS两种语言。

HTML部分

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>验证码</title>
</head>
<body>
    <h1>验证码</h1>
    <form id="form">
        <label for="code">输入验证码:</label>
        <input type="text" name="code" id="code">
        <span id="code-error"></span>
        <br>
        <input type="submit" value="提交">
    </form>
    <script src=".js"></script>
</body>
</html>

其中<form>标签中id属性为"form"<input>标签中name属性为"code",两者需要匹配,以便JS脚本调用。code-error元素用于输入不正确时的提示。

JS部分

const form = document.getElementById("form");
const codeInput = document.getElementById("code");
const codeError = document.getElementById("code-error");

const code = generateCode();
codeInput.placeholder = code;

form.addEventListener("submit", function(event) {
  event.preventDefault();

  if (code === codeInput.value) {
    alert("验证成功");
  } else {
    codeInput.value = "";
    codeError.textContent = "验证码不正确";
  }
});

function generateCode() {
  const CODE_LENGTH = 4;

  const characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
  let code = "";

  for (let i = 0; i < CODE_LENGTH; i++) {
    const index = Math.floor(Math.random() * characters.length);
    code += characters[index];
  }

  return code;
}

JS代码中首先获取form、codeInput、codeError三个元素。然后定义generateCode()函数来生成随机验证码,并通过placeholder属性将其显示在文本框中。addEventListener()函数用于提交表单后对验证码进行验证,并提示验证成功或失败。

示例说明一:纯数字验证码

const characters = "0123456789";

将字符集更改为仅包含0~9的数字字符,即可生成纯数字的验证码。

示例说明二:带有字母的验证码

const characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

将字符集更改为包含大小写字母和数字字符,即可生成包含字母的验证码。

以上是制作简单验证码的完整攻略,通过更改字符集和验证码长度,可以生成不同的验证码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js+html制作简单验证码 - Python技术站

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

相关文章

  • JS自定义函数实现时间戳转换成date的方法示例

    下面是关于“JS自定义函数实现时间戳转换成date的方法示例”的完整攻略: 1. 理解时间戳和Date对象 在开始编写时间戳转换成date的函数之前,我们需要先了解什么是时间戳和Date对象。时间戳是指从1970年1月1日00:00:00(UTC/GMT的午夜)开始所经过的秒数,它是一串数字,通常是10位或13位;而Date对象是JavaScript的日期对…

    JavaScript 2023年5月27日
    00
  • JS实现数组的增删改查操作示例

    下面我来为您讲解一下JS实现数组的增删改查操作的完整攻略。 1. 增加操作 对于增加数组元素的操作,可以使用push()方法或者splice()方法。 push()方法 push()方法可以向数组末尾追加一个或多个元素,示例代码如下: let arr = [1, 2, 3]; arr.push(4); console.log(arr); // [1, 2, …

    JavaScript 2023年5月27日
    00
  • 国外的为初学者写的JavaScript教程

    下面我将为您详细讲解如何学习“国外的为初学者写的JavaScript教程”。 一、寻找合适的教程网站 在寻找JavaScript教程网站时,您可以通过搜索引擎来寻找。以下是几个优秀的JavaScript教程网站,推荐大家参考: MDN Web 文档:MDN Web 文档是一个权威的Web技术文档网站。该网站的JavaScript教程适合初学者学习,并有逐步深…

    JavaScript 2023年6月10日
    00
  • 浅谈Javascript事件处理程序的几种方式

    浅谈Javascript事件处理程序的几种方式 Javascript作为一门客户端脚本语言,广泛应用于网页开发中。为了实现网页动态效果和交互功能,Javascript提供了一系列的事件处理程序。本篇文章将介绍Javascript事件处理程序的几种常用方式,以及它们的优缺点。 1. 在HTML中添加事件处理程序 在HTML元素的属性中添加事件处理程序是一种简单…

    JavaScript 2023年5月27日
    00
  • JS端基于download.js实现图片、视频时直接下载而不是打开预览

    要实现前端直接下载文件而不是打开预览,可以借助 download.js 库来实现。download.js 是一个轻量级的 JavaScript 库,可以让你在浏览器中下载文件。它允许你使用 JavaScript 下载文件,无需打开预览窗口或重定向到下载链接。 以下是实现该功能的详细攻略: 步骤 1:引入下载库和样式文件 首先,你需要在你的 HTML 文件中引…

    JavaScript 2023年5月27日
    00
  • 简单实用的js调试logger组件实现代码

    针对“简单实用的js调试logger组件实现代码”的完整攻略,我将从以下几个部分进行讲解: 调试logger组件简介 实现步骤 示例说明:如何在项目中使用调试logger组件 示例说明:如何在浏览器控制台输出调试信息 接下来我将逐一讲解。 1. 调试logger组件简介 调试logger组件是一种常用的js调试工具,可以在开发过程中方便地输出调试信息,帮助我…

    JavaScript 2023年5月28日
    00
  • JavaScript中循环遍历Array与Map的方法小结

    下面是详细讲解“JavaScript中循环遍历Array与Map的方法小结”的完整攻略。 一、循环遍历Array 1. for循环 使用for循环逐一遍历数组元素,并进行操作。示例如下: const arr = [‘a’, ‘b’, ‘c’, ‘d’]; for (let i = 0; i < arr.length; i++) { console.lo…

    JavaScript 2023年5月27日
    00
  • 解决JSON.stringify()自动将中文转译成unicode的问题

    要解决JSON.stringify()自动将中文转译成Unicode的问题,可以通过使用第三方库 json-bigint 或者自行编写转换函数来实现。 下面分别给出两种方法的使用示例: 使用json-bigint 安装 json-bigint: sh npm install json-bigint 在代码中引入json-bigint: javascript …

    JavaScript 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部