zoukankan      html  css  js  c++  java
  • jquery通过class验证表单不能为空

    在开发系统时,往往都有某些表单数据为必填项,若用jQuery通过ID去验证,不仅会影响效率,还会有所遗漏,不易于后期维护。

    本章将介绍如何利用jQuery,通过为表单配置class进行统一验证。(ID一个页面只可以使用一次;class可以多次引用)

    1:为input添加class,名字可以随意设置,但每个input需要保持一致,本章案例calss设置为noNull。(若input已有class属性,可直接加到其后)

    2:为input添加一个属性,用来后期通过jquery获取该字段,用作提示语。本章案例提示属性为notNull。

    3:通过jQuery遍历页面中所有calss为noNull的表单,验证其是否为空,若为空,通过获取notNull的字段,进行为空提示。

    具体如何设置,请参照下面的案例。本章针对input,radio,select,checkbox等类型都进行了阐述。

    <!DOCTYPE html>
    <html>
    <head lang="en">
        <meta charset="UTF-8">
    </head>
    <body>
        <form>
               <!-- input -->
               <div>
                   姓名: <input type="text" name="name"  notNull="姓名" class="form-control noNull"> 
               </div>
               <br>
               <!-- radio -->
               <div>
                  性别:
                  男<input type="radio" name="sex" value="0" class="noNull" notNull="性别"><input type="radio" name="sex" value="1" >
               </div>
               <br>
               <!-- select -->
               <div>
                   年龄:
                    <select name="age" class="noNull" notNull="年龄">
                        <option value ="">请选择</option>
                        <option value ="1">1</option>
                        <option value ="2">2</option>
                    </select>
               </div>
               <br>
               <!-- checkbox -->
               <div>
                   兴趣:
                   打球<input type="checkbox" name="hobby" value="1" class="noNull" notNull="兴趣">
                   唱歌<input type="checkbox" name="hobby" value="2">
                   跳舞<input type="checkbox" name="hobby" value="3">
               </div>
               <br>
              <button type="button" class="btn-c" onclick="bubmi()">保存</button>
        </form>
    
    <script src="jquery-1.9.1.min.js"></script>
    <script type="text/javascript">
    function bubmi(){
        $(".noNull").each(function(){
            var name = $(this).attr("name");
            if($(this).val()==""){
            alert($(this).attr('notNull')+"不能为空");return false;
            }
            if($(this).attr("type")=="radio"){  
                if ($("input[name='"+name+"']:checked").size() < 1){  
                    alert($(this).attr('notNull')+"不能为空!");  
                    return false;  
                }  
            }
            if($(this).attr("type")=="checkbox"){  
                if ($('input[name="'+name+'"]:checked').size() < 1){  
                    alert($(this).attr('notNull')+"不能为空!");  
                    return false;  
                }  
            }        
        })    
    }
    </script>
    </body>
    </html>
  • 相关阅读:
    poco的元素定位搞不定?速来看看这3个选择器
    Airtest新手指南大全
    答疑第三期 | 使用 Airtest 最常见的 8 大问题
    【Airtest】用 1 行代码搞定自动化测试的设备连接问题
    用Airtest和poco实现APP自动登录和退出
    答疑第二期 | 使用Airtest最常见问题8大问题
    聊聊最新版AirtestIDE的新功能
    小程序map地图点击makert放大效果和点击放大地图
    小程序setData 修改数组附带索引解决办法
    小程序view的显示与隐藏
  • 原文地址:https://www.cnblogs.com/sky-/p/4929514.html
Copyright © 2011-2022 走看看