2010-10-21 57 views
1

我使用jQuery作爲所有表單的驗證工具,並且我有一個請求將一個字段上的輸入長度限制爲8,12或13個字符。現在,我已經在使用最小長度:8和最大長度:13來處理上限和下限,但還沒有計算出如何將輸入限制爲三種長度中的一種。jQuery驗證 - 將輸入限制爲3個特定長度

+0

http://stackoverflow.com/questions/1075962/jquery-text-輸入長度控制 – zod 2010-10-21 15:38:07

回答

1

您可以添加自定義驗證方法。 下面是一些粗糙的代碼,讓你開始:

jQuery.validator.addMethod("specific_lengths", function(value, element, param) { 
    if (this.optional(element)) return; 

    for (var i = 0; i < param.length; i++){ 
     if (this.getLength($.trim(value), element) == param[i]) 
      return true; 
    } 

    return false;    
}); 

然後,您可以掛鉤這樣的驗證:

jQuery("#myform").validate({ 
    rules: { 
    myField: {required: true, 
       specific_lengths: [8, 12, 13] 
      }, 
    ... 
+0

謝謝,完美的工作! (儘管我將自定義驗證的最後一行更改爲「});」) – WannabeVagabond 2010-10-21 15:52:32

+0

不客氣!我剛剛更新了你的更正答案 - 代碼是非常好的寫的,所以它有點原始:) – 2010-10-21 16:09:17