jquery validate 動態添加自定義校驗規則

需求:再已有驗證(也是基於validate插件,驗證功能寫在表單中,不是用js代碼,如:required寫在input中)基礎上如何自定義,並動態綁定到指定元素上,並通過$("#formid").valid();方法進行驗證?

網上找了一圈,基本上都是採用validate的$.validator.addMethod方法來自定義驗證規則,然後通過$("#id").rules("add", 方法來動態綁定。但是有問題,會提示:無法獲取未定義或 null 引用的屬性“settings”的錯誤。

解決方法:

關鍵點就是必須先執行$("#formid").validate()方法,再執行動態添加。參考文章:https://www.iteye.com/blog/wyf-2319482

至於什麼原因不知道,validate官方文檔沒看明白,demo也沒有很多。

示例代碼:

$("#editForm").validate();
$.validator.addMethod("administrative_punishment", function(value) {   
	//do some valid;
    return false;
}, function() { 
	return "這是驗證文字";
});
			
$("#cxgsyy").rules("add", {administrative_punishment: true});
$("#xyxfrq").rules("add", {administrative_punishment: true}); 
$("#editForm").valid();

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章