2011-06-06 116 views
1

我正在使用jquery驗證插件,並試圖爲表單的唯一字段定義規則:字段的值必須包含五個數字的字符串(該字段值將始終包含字母)。我嘗試用所需的規則(依賴回調)並得到了類似的東西:jquery:表單驗證

rules: { 
    field: { 
     required: function(element) { 
     var value_field = $('#field').attr('value'); 
     } 
    } 
    } 

現在我需要尋找value_field爲五個數字的字符串。 我在這種情況下使用了好的規則嗎?以及如何搜索所需的字符串?

感謝

回答

1

您需要在安裝之前將自定義方法添加到驗證驗證您的規則:

$.validator.addMethod("FiveDigits", function(value, element) { 
    return this.optional(element) || /^\d{5}$/.test(value); 
}, "A 5 digit number please"); 

然後使用以下規則:

fieldName : { required : true, FiveDigits: true }

+1

我已經解決了它,但你的代碼看起來更好;)謝謝 – Joeyjoejoe 2011-06-06 20:37:38

+0

謝謝...世界需要更多漂亮的代碼... – ShaneBlake 2011-06-06 21:05:02

1
// define variables 
var field_value, regexp; 
// set field_value to #field's value 
field_value = $("field").val(); 
// the regular expression that matches the pattern we're looking for 
regexp = /\d{5}/; 
if (field_value.match(regexp)) { 
    // do something 
} else { 
    // do something else 
} 
+0

謝謝,你的代碼似乎很好,但我無法找到如何應用它jquery驗證。我用你的代碼添加了一個新的方法,但它不起作用。 – Joeyjoejoe 2011-06-06 16:38:10