简单的js表单验证函数

yizhihongxing

下面是“简单的js表单验证函数”完整攻略的具体步骤:

1. 确定需求

在编写表单验证函数之前,需要明确需要验证的表单项和验证规则,以确定函数的参数和返回值。例如:

  • 验证规则:姓名为必填项,只能输入中文字符
  • 函数参数:需要验证的表单项的id或class名
  • 函数返回值:验证通过返回true,验证失败返回false

2. 编写函数

根据需求编写表单验证函数,函数名称可以根据实际需求取名。例如:

function checkName(id) {
  var name = document.getElementById(id).value;
  var reg = /^[\u4e00-\u9fa5]{2,4}$/;
  if (reg.test(name)) {
    return true;
  } else {
    alert('请输入2-4个中文字符');
    return false;
  }
}

以上函数的逻辑为:
- 获取传入id对应的表单项的值
- 使用正则表达式判断该值是否符合规则
- 如果符合规则,返回true,否则弹出提示框并返回false

3. 调用函数

在需要验证的表单项的对应事件中调用上一步编写的函数,判断表单项输入是否符合要求。例如:

<form>
  <label for="name">姓名:</label>
  <input type="text" id="name" onchange="checkName('name')">
  <button type="submit">提交</button>
</form>

以上代码中,当姓名输入框的内容发生改变时,调用checkName函数进行验证。如果验证失败,会弹出提示框提醒用户重新输入。

4. 添加更多验证规则

根据实际需求,可以添加更多的表单验证规则。例如:

function checkEmail(id) {
  var email = document.getElementById(id).value;
  var reg = /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/;
  if (reg.test(email)) {
    return true;
  } else {
    alert('邮箱格式不正确');
    return false;
  }
}

以上函数的逻辑为:
- 获取传入id对应的表单项的值
- 使用正则表达式判断该值是否符合规则
- 如果符合规则,返回true,否则弹出提示框并返回false

调用方法同上。

示例说明

示例1:验证单一表单项

例如,验证“用户名”文本框只能输入1-10个字符的数字和字母:

function checkUserName(id) {
  var username = document.getElementById(id).value;
  var reg = /^[a-zA-Z0-9]{1,10}$/;
  if (reg.test(username)) {
    return true;
  } else {
    alert('用户名只能由1-10个数字和字母组成');
    return false;
  }
}

示例2:验证多个表单项

例如,验证“用户名”和“密码”两个文本框的内容是否符合要求,并在提交按钮点击时验证:

<form>
  <label for="username">用户名:</label>
  <input type="text" id="username"><br>
  <label for="password">密码:</label>
  <input type="password" id="password"><br>
  <button type="submit" onclick="return checkForm()">提交</button>
</form>
function checkForm() {
  if (!checkUserName('username')) {
    return false;
  }
  if (!checkPassword('password')) {
    return false;
  }
  return true;
}

以上程序的逻辑为:
- 当“提交”按钮点击时,调用函数checkForm进行验证
- checkForm函数依次调用checkUserName和checkPassword函数进行验证
- 如有任一表单项验证不通过,则返回false中止提交
- 如两个表单项都验证通过,则返回true允许提交

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:简单的js表单验证函数 - Python技术站

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

相关文章

  • 详解JavaScript数组过滤相同元素的5种方法

    详解JavaScript数组过滤相同元素的5种方法 在实际应用中,我们经常会使用数组来存储一些数据。有时候我们需要从这些数据中快速过滤出相同元素,这时候就需要用到数组去重的方法。本文将详细介绍5种常见的JavaScript数组去重方法。 1.使用Set ES6中新增了Set对象,可以帮我们去掉数组中的重复项。我们将数组转换为Set对象,再把Set对象转换回数…

    JavaScript 2023年5月27日
    00
  • 详解JavaScript UTC时间转换方法

    详解JavaScript UTC时间转换方法 在JavaScript中,我们通常使用的日期对象保存的是本地时间。但是,在跨时区使用的情况下,UTC时间经常会被使用。要将本地时间转换为UTC时间,或者将UTC时间转换为本地时间,可以使用JavaScript提供的函数来完成。下面介绍JavaScript UTC时间转换的方法。 1. new Date(Date.…

    JavaScript 2023年5月27日
    00
  • javascript格式化日期时间函数

    JavaScript 格式化日期时间函数 JavaScript 提供了几个内置函数,用于格式化日期和时间。您可以使用这些函数轻松地格式化日期和时间。 Date 对象 跟踪时间是计算机编程中的一个常见任务。JavaScript 提供了日期对象来处理日期和时间。 创建一个日期对象有几种方法: let date = new Date(); 这个语句创建了一个包含当…

    JavaScript 2023年5月27日
    00
  • Javascript中获取对象的原型对象的方法小结

    获取对象的原型对象是JavaScript中常见的操作,下面介绍一些获取对象的原型对象的方法。 方法一:使用Object.getPrototypeOf Object.getPrototypeOf() 方法返回指定对象的原型(内部[[Prototype]]属性的值)。 示例代码: const obj = {}; const proto = Object.getP…

    JavaScript 2023年5月27日
    00
  • 关于前端JavaScript ES6详情

    关于前端JavaScript ES6详情的完整攻略: 什么是ES6 ES6是ECMAScript 6.0的简称,它是JavaScript的下一代语言标准,也叫做ECMAScript 2015,它在2015年6月正式发布。ES6拥有更加清晰的语法、更丰富的功能和更强的表现力,它可以让开发者更加便捷地编写高效、易读、易维护的JavaScript代码。 ES6的新…

    JavaScript 2023年5月18日
    00
  • 详解JavaScript中typeof与instanceof用法

    详解JavaScript中typeof与instanceof用法 typeof typeof 是用于判断一个变量的基本数据类型的关键字,无法判断对象的具体类型。 如果变量是字符串,返回 “string”。 如果变量是数字,返回 “number”。 如果变量是布尔型,返回 “boolean”。 如果变量是对象,返回 “object”。 如果变量是函数,返回 “…

    JavaScript 2023年5月27日
    00
  • DOM Scripting中的图片切换[兼容Firefox]

    首先我们来分析一下“DOM Scripting中的图片切换[兼容Firefox]”这个问题。 问题分析 图片切换是一个常见的网页特效,实现该特效的核心是将多个图片进行显示与隐藏。DOM Scripting提供了一种在浏览器中对文档对象模型进行操作的方式,可以利用它来实现图片的切换效果。但是,在不同的浏览器中,对于DOM的实现方式不同,需要针对不同的浏览器,进…

    JavaScript 2023年6月10日
    00
  • 如何使用50行javaScript代码实现简单版的call,apply,bind

    下面是如何使用50行JavaScript代码实现简单版的call, apply, bind的完整攻略。 步骤 首先,我们需要一个函数作为示例,以便于演示call, apply, bind的使用。我们用一个简单的计算器函数,实现加法和乘法,代码如下: function Calculator() { this.add = function(num1, num2)…

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