Javascript的form表单校验输入框

以下是HTML代码:

 <form name="myForm" onsubmit="return validateForm()">
    <label for="name">姓名:</label>
    <input type="text" id="name" name="name"><br>

    <label for="email">电子邮件:</label>
    <input type="email" id="email" name="email"><br>

    <label for="age">年龄:</label>
    <input type="number" id="age" name="age"><br>

    <label for="phone">电话号码:</label>
    <input type="tel" id="phone" name="phone"><br>

    <label for="address">地址:</label>
    <input type="text" id="address" name="address"><br>

    <label for="username">用户名:</label>
    <input type="text" id="username" name="username"><br>

    <input type="submit" value="提交">
  </form>

以下是js实现:

 function validateForm() {
      var name = document.forms["myForm"]["name"].value;
      var email = document.forms["myForm"]["email"].value;
      var age = document.forms["myForm"]["age"].value;
      var phone = document.forms["myForm"]["phone"].value;
      var address = document.forms["myForm"]["address"].value;
      var username = document.forms["myForm"]["username"].value;

      if (name == "") {
        alert("请填写姓名");
        return false;
      }

      if (email == "") {
        alert("请填写电子邮件");
        return false;
      } else {
        var emailPattern = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
        if (!emailPattern.test(email)) {
          alert("请输入有效的电子邮件地址");
          return false;
        }
      }

      if (age == "") {
        alert("请填写年龄");
        return false;
      } else {
        if (isNaN(age) || age < 0 || age > 120) {
          alert("请输入有效的年龄");
          return false;
        }
      }

      if (phone == "") {
        alert("请填写电话号码");
        return false;
      } else {
        var phonePattern = /^\d{11}$/;
        if (!phonePattern.test(phone)) {
          alert("请输入有效的电话号码(11位数字)");
          return false;
        }
      }

      if (address == "") {
        alert("请填写地址");
        return false;
      }

      if (username == "") {
        alert("请填写用户名");
        return false;
      }

      return true;
    }

定义了一个名为validateForm的JavaScript函数,该函数用于验证表单数据。在函数中,首先获取每个输入框的值,然后逐一进行验证。

对于每个输入框,我们使用条件语句来检查其值是否满足特定要求,并在不符合要求时显示警告框并返回false以阻止表单提交。例如,如果姓名字段为空,则显示警告框并返回false。同样地,我们使用正则表达式来验证电子邮件和电话号码的格式,使用比较运算符来验证年龄的范围。

在HTML部分,我们将每个输入框与相应的标签进行关联,并在表单元素上添加了onsubmit事件来调用validateForm函数。如果所有输入框的值都通过验证,将允许表单提交;否则,将阻止表单提交。

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在HTML中,可以使用form元素来创建表单,并且可以HTML5提供的一些新特性来表单格式校验。,也可以使用JavaScript进行表单格式校验以下是两种常见的表单格式校验方法: 1. 使用HTML5提供的表单校验特性: HTML5提供了一些新的表单校验特性,可以通过在表单元素上添加一些属性来实现表单的格式校验,例如: - required:表示该表单元素必填; - pattern:表示该表单元素的值必须符合指定的正则表达式; - type:表示该表单元素的类型,例如email、url、tel等。 示例代码如下: ```html <form> <input type="email" name="email" required> <input type="password" name="password" pattern=".{6,}" title="密码长度必须大于等于6位"> <input type="submit" value="提交"> </form> ``` 在上述代码中,input元素中的type属性指定了该表单元素的类型,例如email表示该表单元素是一个邮箱输入框,password表示该表单元素是一个密码输入框。同时,input元素中的required属性表示该表单元素是必填的,pattern属性表示该表单元素的值必须符合指定的正则表达式,title属性表示对该表单元素的提示信息。 2. 使用JavaScript进行表单校验: 除了使用HTML5提供的表单校验特性外,也可以使用JavaScript来进行表单格式校验。常用的方法是在表单的submit事件中编写校验逻辑,例如: ```html <form onsubmit="return validateForm()"> <input type="email" id="email" name="email"> <input type="password" id="password" name="password"> <input type="submit" value="提交"> </form> ``` 在上述代码中,form元素的onsubmit属性指定了在表单提交时要执行的validateForm函数。validateForm函数可以通过获取表单元素的值,使用正则表达式对值进行格式校验,如果校验失败,则返回false,停止表单提交;如果校验成功,则返回true,继续表单提交。示例代码如下: ```js function validateForm() { var email = document.getElementById("email").value; var password = document.getElementById("password").value; var emailReg = /^\w+@[a-zA-Z_]+?\.[a-zA-Z]{2,3}$/; var passwordReg = /^.{6,}$/; if (!emailReg.test(email)) { alert("请输入正确的邮箱地址"); return false; } if (!passwordReg.test(password)) { alert("密码长度必须大于等于6位"); return false; } return true; } ``` 在上述代码中,validateForm函数首先获取email和password表单元素的值,然后使用正则表达式emailReg和passwordReg对值进行格式校验,如果校验失败,则弹出提示框,并返回false,停止表单提交;如果校验成功,则返回true,继续表单提交。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码真的养发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值