• HTML---表单验证


    文章目录


    本章目标

    • 掌握String对象的用法
    • 会使用表单选择器的选择页面元素
    • 会使用JQuery事件进行表单验证
    • Ajax的概念和作用

    一.表单验证概述

    前端中的表单验证是在用户提交表单之前,对用户输入的数据进行合法性检查的过程。这种验证的目的是确保用户输入的数据符合预期的要求,从而减少错误和无效的数据提交,提高数据的质量和准确性。

    表单验证可以分为多种类型,包括但不限于:

    1. 输入类型的验证:检查用户输入的数据是否符合预期的输入类型,如文本、数字、邮箱、密码等。
    2. 必填字段的验证:确保用户必须填写某些字段,这些字段通常是表单中的关键信息。
    3. 日期和时间范围的验证:检查用户输入的日期或时间是否在允许的范围内。
    4. 步长的验证:对于某些需要递增或递减的输入字段,如价格、评分等,验证其步长是否符合要求。
    5. 字符长度的验证:检查用户输入的字符长度是否在规定的范围内。
    6. 数值范围的验证:检查用户输入的数值是否在允许的范围内。
    7. 正则表达式的验证:使用正则表达式对用户输入的数据进行复杂的模式匹配和验证。

    在前端中,表单验证可以通过多种技术实现,如HTML5的内置验证、JavaScript验证库(如jQuery Validation Plugin)以及自定义的JavaScript代码。其中,JavaScript是实现表单验证的常用工具之一,它可以在数据被送往服务器前对HTML表单中的输入数据进行验证,从而减轻服务器的负担并提高用户体验。

    二.表单选择器

    1. html>
    2. <html>
    3. <head>
    4. <title>表单选择器示例title>
    5. head>
    6. <body>
    7. <form id="myForm">
    8. <label for="name">姓名:label>
    9. <input type="text" id="name" name="name"><br><br>
    10. <label>性别:label>
    11. <input type="radio" id="male" name="gender" value="male">
    12. <label for="male">label><br>
    13. <input type="radio" id="female" name="gender" value="female">
    14. <label for="female">label><br><br>
    15. <label>兴趣爱好:label>
    16. <input type="checkbox" id="reading" name="hobby" value="reading">
    17. <label for="reading">阅读label><br>
    18. <input type="checkbox" id="travel" name="hobby" value="travel">
    19. <label for="travel">旅行label><br>
    20. <input type="checkbox" id="coding" name="hobby" value="coding">
    21. <label for="coding">编程label><br><br>
    22. <input type="submit" value="提交">
    23. form>
    24. <script src="jq/jquery-3.7.1.js">script>
    25. <script type="text/javascript">
    26. $(document).ready(function(){
    27. //选中标签id=myForm中所有的input、button,select,textarea元素
    28. $("#myForm :input").css("background-color","aqua")
    29. });
    30. script>
    31. body>
    32. html>

    属性过滤选择器 

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    6. <title>前端表单示例title>
    7. head>
    8. <body>
    9. <form>
    10. <label for="country">选择国家:label>
    11. <select id="country" name="country">
    12. <option value="usa">美国option>
    13. <option value="china">中国option>
    14. <option value="france">法国option>
    15. <option value="germany">德国option>
    16. select>
    17. <br><br>
    18. <label>选择性别:label>
    19. <br>
    20. <input type="radio" id="male" name="gender" value="male">
    21. <label for="male">label><br>
    22. <input type="radio" id="female" name="gender" value="female">
    23. <label for="female">label><br>
    24. <br>
    25. <label>选择你感兴趣的运动:label>
    26. <br>
    27. <input type="checkbox" id="football" name="sport" value="football">
    28. <label for="football">足球label><br>
    29. <input type="checkbox" id="basketball" name="sport" value="basketball">
    30. <label for="basketball">篮球label><br>
    31. <input type="checkbox" id="swimming" name="sport" value="swimming">
    32. <label for="swimming">游泳label><br>
    33. <br>
    34. <input type="submit" value="提交">
    35. form>
    36. <script src="jq/jquery-3.7.1.js">script>
    37. <script type="text/javascript">
    38. $(function(){
    39. //使用属性选择器selected选中标签select中选中的option并存贮在变量slist中
    40. var slist = $("#country :selcted");
    41. //使用each()函数遍历slist并调用函数
    42. slist.each(function(){
    43. 使用html()函数编译选中的option标签并保存在变量message中
    44. var messsage = $(this).html();
    45. window.alert(message);
    46. });
    47. });
    48. script>
    49. body>
    50. html>

     三.表单验证

     演示案例

    1. html>
    2. <html>
    3. <head>
    4. <title>表单选择器示例title>
    5. head>
    6. <body>
    7. <form id="myForm">
    8. <label for="name">账号:label>
    9. <input type="text" id="name" name="name" value=""><br><br>
    10. <label>性别:label>
    11. <input type="radio" id="male" name="gender" value="male">
    12. <label for="male">label><br>
    13. <input type="radio" id="female" name="gender" value="female">
    14. <label for="female">label><br><br>
    15. <label>兴趣爱好:label>
    16. <input type="checkbox" id="reading" name="hobby" value="reading">
    17. <label for="reading">阅读label><br>
    18. <input type="checkbox" id="travel" name="hobby" value="travel">
    19. <label for="travel">旅行label><br>
    20. <input type="checkbox" id="coding" name="hobby" value="coding">
    21. <label for="coding">编程label><br><br>
    22. <input type="submit" value="提交">
    23. form>
    24. <script src="jq/jquery-3.7.1.js">script>
    25. <script type="text/javascript">
    26. $(document).ready(function(){
    27. //点击表单中的提交按钮时调用函数
    28. $("#myForm").submit(function(){
    29. // $("#myForm :text")选中表单中的文本框并使用val()提取标签中的value值并储存在变量user中
    30. var user = $("#myForm :text").val();
    31. //判断账号是否为空
    32. if(user==""){
    33. window.alert("账号不能为空!");
    34. //结合当前方法并返回false的值
    35. return false;
    36. }
    37. if(user.indexOf("@")==-1){
    38. window.alert("User格式错误,必须包含@符号");
    39. return false;
    40. }
    41. var pwd = $("#myForm :password").val();
    42. //使用for循环遍历密码框中的每个字符
    43. for(var i=0;ilength;i++){
    44. //使用substring(i,i++)函数提取i位置到i+位置的数字不包含i+1
    45. var s = pwd.subtring(i,i++);
    46. //使用isNaN(s)判断该变量是否为字符串
    47. if(isNaN(s) == false){
    48. window.alert("密码框内不允许出现数字");
    49. return false;
    50. }
    51. });
    52. });
    53. script>
    54. body>
    55. html>

     表单验证的方法


    总结

  • 相关阅读:
    Linux内存管理(十四):buddy 系统分配器之快速分配(2)
    探秘扩散模型:训练算法与采样算法的双重解读
    springboot篮球论坛系统springboot034
    【JavaEE进阶序列 | 从小白到工程师】JavaEE中的抽象类和抽象方法
    智慧安防视频监控系统EasyCVR平台突然运行异常,是什么原因?
    Redis-集群下的锁还安全么?
    凡拓数字通过注册:年营收7亿 伍穗颖夫妇控制43%股权
    自动化数据读取报错元素找不到
    设计模式 之单例模式
    ZLMediaKit启用webrtc编译
  • 原文地址:https://blog.csdn.net/zhoutong2323/article/details/136397382