![](/img/trans.png)
[英]How to run function with parameters using $timeout in AngularJS?
[英]how to run a function with parameters
我有一個僅驗證表單(適用於舊瀏覽器)的函數。 該函數工作正常,只是每次調用此函數時都必須傳遞參數,而實際上我已經在'config'中指定了默認參數。
因此,按邏輯,如果我將函數調用為: validateMe();
它應作為validateMe({requiredClass: '.required', verifiedClass: 'invalid'});
但是不幸的是,不帶參數的函數調用無法正常工作(在我的情況下,表單觸發了Submit事件)(到達return false
)。
那么使用默認設置運行該功能的代碼中缺少什么?
function validateMe(vform, settings) {
var vform, //form name or id
config = {
'requiredClass': '.required',
'verifiedClass': 'invalid'
};
if (settings) {
$.extend(config, settings);
}
$(vform).on('submit', function(){
var inputs = $(this).find(config.requiredClass),
required = [];
for (i=0; i < inputs.length; i++) {
if (inputs[i] != null) {
if ($(inputs[i]).val().replace(/^\s+|\s+$/g, '') == '') {
required.push($(inputs[i]).index());
}
}
}
if (required.length > 0) {
$(this).find('input').removeClass(config.verifiedClass);
for(n=0;n<required.length;n++) {
$(inputs[n]).addClass(config.verifiedClass);
}
return false;
}
});
}
有什么幫助嗎?
謝謝。
function validateMe(vform, settings) {
this.vform = vform || 'default',
this.setting = 'whatever',
this.private = ''
}
var newInstance = new validateMe();
現在您有了它的一個實例,因此您可以隨時定義它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.