MVC3 と目立たない検証を使用しています。2 つのフィールドが選択されている場合、フォームが不完全な場合でも、フォームを送信したい場合があります。私が使用しているJavaScriptは次のとおりです。
$('#form_section11').submit(function () {
//event.preventDefault(); //stops form from submitting immediately
var validatorSection11 = $('#form_section11').validate();
if (!$(this).valid()) {
// or family name and date of birth
var FamilyNameExists = true;
var DateOfBirthExists = true;
if (validatorSection11.errorMap["FamilyName"]) { FamilyNameExists = false; }
if (validatorSection11.errorMap["DateOfBirth"]) { DateOfBirthExists = false; }
// show the partial save rules
$('#ParitalSaveIntructions').show();
// show the partial save checkbox
if (FamilyNameExists && DateOfBirthExists) {
$("#AgreePartialSave").show();
if ($("#PartialSave").is(':checked')) {
// partial save has been requested
return true; //// <- save not happening, INCORRECT action
}
// clear perinatalWomanView_PartialSave
$("#PartialSave").removeAttr('checked');
}
return false; // <- save not happening, correct action
}
return true; // <- save happens, correct action
});
ユーザーには、送信が不完全であることを確認するためのチェックボックスが表示されます。JavaScript が機能する場所と失敗する場所を示しました。
私も追加しました
var validatorSection11 = $('#form_section11').validate(
{
onsubmit: false
}
);
これは効果がありません。私の質問は次のとおりです。
オリジナルreturn true
が機能しないのはなぜですか?onsubmit: false
を正しく使用していますか? これを行うより良い方法はありますか?
前もって感謝します。