Bootstrap バリデーターに関する質問です。このプラグインを使用しています: Validator
私は<form>
「マスク」と名付けたいくつかのグループを持つ大規模なグループを持っています。各マスクは、いくつかの「フィールド」で構成されています。各フィールドには、通常<input>
の、 などを指定できます。これらの各フィールドには、field_1に、 field_2に など<select>
の固有のルールがあります。required
data-minLength="5"
maxlength="30"
必要な動作: これらのグループ/マスクのいずれかが有効な場合は、送信ボタンを再度有効にして、フォームを部分的に送信できるようにします。フォームのすべての部分が入力されるまで待たないでください。問題: COMPLETE フォームのすべてのバリデータ ルールを満たすまで、送信ボタンが完全に無効になります。これは私が望んでいるものではありません。フォーム全体のうち、1 つ以上のグループがそれ自体で有効な場合は、送信ボタンをアクティブにします。
私が試したこと:
$("#inputForm").on("change", function () {
$("#inputForm").find("*[id^=mask_]").each(function() {
var valid = true;
$(this).find("input[id^=field_], select[id^=field_]").each(function() {
if(!$(this).val()) {
valid = false;
}
});
if(valid) {
$("#inputForm").find(":submit").prop("disabled", false);
$("#inputForm").prop("novalidate", false)
}
});
});
どうやってするか?私のコードはif(valid)
句に到達しますが、送信ボタンを再アクティブ化しません...またsubmit()
、フォームを呼び出して1つのグループが有効な場合は、自動送信しないでください。ユーザーが送信できるようにするためにボタンのみをアクティブ化します今それ。
ありがとう!