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>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM