怎樣更靈活的是使用jquery.validate--未完待續
阿新 • • 發佈:2017-07-11
12px 樣式 fault rate ada tin 結果 def 引入
jqueryValidate的具體使用方法很多,這裏就不在贅述,這一次只談一下怎樣簡單的實現表單驗證。
頁面引入js
<script src="~/js/jquery-migrate-1.8.1.min.js"></script> <script src="~/Scripts/jquery.validate.js"></script> <script src="~/Scripts/jquery.metadata.js"></script>//封裝了對validate更簡潔的調用
簡單驗證方式
<input id="ssp" class="required" />
引用metadata之後就可以所有直接標簽定義驗證內容和錯誤消息
<input class="{validate:{ required :true},messages:{ required:‘請輸入名稱‘ }}" id="ssp" />
但這樣會影響到表單正常的樣式設置,所以可以通過metadata來修改。這樣就支持在data-validation屬性中使用json格式定義
1.修改metadata中屬性初始化
metadata : { defaults : { type: ‘attr‘, name:‘data-validation‘,//修改原屬性class為data-validation cre: /({.*})/, single: ‘metadata‘ }, setType: function( type, name ){ this.defaults.type = type; this.defaults.name = name; } }
2.修改了這個後發現還是不能用,最後還要修改validate.js中的class定義
classRules: function(element) { var rules = {};var classes = $(element).attr(‘data-validation‘);//修改class為要定義的屬性 if ( classes ) { $.each(classes.split(‘ ‘), function() { if (this in $.validator.classRuleSettings) { $.extend(rules, $.validator.classRuleSettings[this]); } }); } return rules; },
有些文檔中講到在文件尾部通過setType來設置,就可以實現,單在我這裏並沒有得到成功的結果。
$.metadata.setType("attr", "data-validation");
怎樣更靈活的是使用jquery.validate--未完待續