我有一個函數比較兩個字段。驗證後顯示錯誤消息 - jQuery驗證
$.validator.addMethod("validatormethod", function (value, element) {
return $('#Field1').val() > $('#Field2').val()
}, "Test");
形式是動態的,因此形式使用each
驗證:
$('.validateclass').each(function() {
$(this).rules('add', {
validatormethod: true,
messages: {validatormethod: "Test" }
})
});
$('.validateclass2').each(function() {
$(this).rules('add', {
required: true,
messages: {required: "This field is required" }
})
});
$('#myForm').valid();
現在我的問題是消息Test
一旦出現頁面加載。只有在比較字段後纔會出現。我知道這是由於行$('#formSaveComponent').valid();
。但我希望在頁面加載時顯示所需的消息。有什麼方法可以使用jQuery Validate插件完成這件事。
顯示爲表單的HTML。另外解釋更多關於爲什麼當頁面加載時你觸發'.valid()'和你的標題應該是什麼意思。驗證後顯示錯誤消息是默認行爲。 – Sparky 2014-10-27 18:07:45
我正在觸發,因爲有很多字段和一些字段,我希望驗證在頁面加載後立即觸發。點擊提交按鈕後不是。 – user2281858 2014-10-27 18:10:04
在窗體加載時,表單加載中的.Valid()將爲窗體上的每個字段運行,這就是爲什麼「測試」顯示出來的原因。如果您只想要驗證某些內容,則應指定要驗證的字段,而不是整個表單。 – tlbignerd 2014-10-27 18:13:25