2016-02-25 30 views
-1

我有以下情況:如果用戶單擊保存按鈕,則必須應用規則,如果單擊發布按鈕中的規則是其他。根據用戶選擇更改jquery驗證規則

目前沒有應用任何。

saveBtn.on('click', function(){ 
    $('form').validate(publish_rules); 
}); 

publishBtn.on('click', function(){ 
    $('form').validate(save_continue_rules); 
}); 

回答

0

您不能多次調用.validate()方法來更改規則。它僅用於初始化插件一次。

取而代之的是,開發者提供了the .rules() methods來動態添加和刪除規則。

$('#myform').validate({ // initialize plugin 
    // rules & options 
}); 

saveBtn.on('click', function() { 
    $('#myfield').rules('add', { 
     required: true 
    }); 
}); 

publishBtn.on('click', function(){ 
    $('#myfield').rules('remove', 'required'); 
}); 

然後,如果你需要你的click處理程序中以編程方式觸發驗證,你會打電話the .valid() method ...

$('#myform').valid(); // triggers validation of entire form 

$('#myfield').valid(); // triggers validation of a field