0

我需要定製eror消息像這樣我的客戶端驗證(我使用MVC客戶端驗證)自定義消息錯誤jQuery驗證

define([ 
    'jquery', 
    'validate', 
    'unobtrusive' 
], function ($, validator, unobtrusive) { 
    jQuery.validator.addMethod('firstnamevalidator', 
         function (value, element, params) { 
          if(value<parms.min) 
          **show message error1** 
          if(value==parms.min) 
          **show message error 2** 
          return false; 
         }); 

    jQuery.validator.unobtrusive.adapters.add('firstnamevalidator', 
          ['min'], 
          function (options) { 
           options.rules['firstnamevalidator'] = { 
            min: options.params.min         }; 
           options.messages['firstnamevalidator'] = options.message; 
          }); 
}); 

我該怎麼讓MESSAGE1 OU消息2在驗證?

問候

回答

0

對不起,我不能對此進行測試,但我認爲,看代碼,你想要做什麼樣的需求,當你添加適配器來完成。基本上,你添加的「方法」應該只返回true或false。

當此方法返回false,所有的鏈找到顯示被激活,並且如果該消息是一個函數,其將與所述參數和所述元素作爲參數來調用該消息:

options.messages['firstnamevalidator'] = function (params, elem) { 
    // logic here... you can use options.message of course... 
} 

可悲看起來,如果沒有從元素中使用如下內容實際獲得值,您將無法獲得該值:$(elem).val()

我希望這會帶你走向正確的方向。

你試圖解決什麼確切的問題?可能有一個更簡單的方法。

+0

當值 max時顯示message1顯示error2當值== 0 message3等... – user1428798

+0

我不能做他當我添加適配器,因爲邏輯是在addmethod中 – user1428798