我想通過javascript/jQuery做幾個驗證。我需要知道我可以使用什麼樣的邏輯。Javascript驗證衆多領域
我有大約15個字段來驗證。我想我是否可以驗證每個字段的返回值是true還是false。然後我會檢查是否有任何返回值是錯誤的。如果是,那麼表單不被驗證。這有道理嗎?
或者我是否必須經歷一組if嵌套的條件,一個接一個接一個?
PS:我不想使用jQuery驗證插件,因爲在我的表單中很少出現複雜問題。
讓我知道你認爲我該怎麼做。
謝謝。
我想通過javascript/jQuery做幾個驗證。我需要知道我可以使用什麼樣的邏輯。Javascript驗證衆多領域
我有大約15個字段來驗證。我想我是否可以驗證每個字段的返回值是true還是false。然後我會檢查是否有任何返回值是錯誤的。如果是,那麼表單不被驗證。這有道理嗎?
或者我是否必須經歷一組if嵌套的條件,一個接一個接一個?
PS:我不想使用jQuery驗證插件,因爲在我的表單中很少出現複雜問題。
讓我知道你認爲我該怎麼做。
謝謝。
我想補充然後
$('.required').each(function (i) {
});
你可以使用一個錯誤的散列狀物體需要一個CSS類。
$('#target').submit(function (e) {
var errors = {};
//No field should be blank
$('.required').each(function() {
if (!$.trim($(this).val())) errors[$(this).prev('label').text()] = 'is blank';
});
//Don't submit form on errors
//Show errors
if (!jQuery.isEmptyObject(errors)) {
$('.error').show().html("<p>Form couldn't be submitted because:</p>");
$('.error').append(
$.map(errors, function (type, error) {
return $('<p>', {
text: error + ' ' + type
}).get();
}));
// Prevent the form from being submitted
return false;
}
$('.error').hide();
});
這是一個無恥的插頭,但你有沒有試過regula?我正在積極開發它,我知道至少另一個人正在使用它(耶!)。它可能會解決您的一些複雜問題。另外,如果你可以用你的複雜情況更新你的問題,我可以告訴你如何在規則中做到這一點。它可以讓你不必編寫自己的驗證。
regula還將其驗證結果作爲約束違規數組返回,因此您可以看到哪些元素驗證失敗(以及其他情況)。
This answer有關regula功能的更多信息,如果你有興趣。
我們可以得到您的表單的一個例子嗎? – rlemon
您可以採取任何形式的示例。我需要知道如何驗證幾個字段的邏輯。做,我使用嵌套的if-else?或分別驗證每個字段?我想我可能不得不單獨驗證每個字段,因爲如果表單無法驗證,那麼我需要告訴特定的錯誤消息。 – Blueboye
我認爲你只是回答了你自己的問題;) – rlemon