양식이 있는데 암호 필드가 입력 된 경우 유효성을 검사하기 위해 숨겨진 입력을받는 데 문제가 있습니다.jQuery 다른 필드에 값이있는 경우에만 숨겨진 입력의 유효성을 검사하십시오.
<div class="form-group">
<label for="password" class="control-label col-sm-4">Password: </label>
<div class="col-lg-6">
<input type="password" placeholder="Your Password" id="password" name="password" class="form-control" autocomplete="off">
</div>
</div>
<div class="form-group">
<label class="control-label col-sm-4">Password Strength</label>
<div class="col-sm-6" id="password-meter">
<div class="progress">
<div class="progress-bar" id="password-meter-progress"></div>
<input type="hidden" name="password_strength" id="password_strength">
</div>
</div>
</div>
<div class="form-group">
<label for="confirm_password" class="control-label col-sm-4">Confirm Password: </label>
<div class="col-lg-6">
<input type="password" placeholder="Confirm Password" id="confirm_password" name="confirm_password" class="form-control" autocomplete="off">
</div>
</div>
이와 같은 버튼을 클릭하면 아무런 변화가 없습니다. 나는 v.errorList
을 로그 아웃 시도했지만 거기에 아무것도 표시되지 않습니다 여기
$('#button').click(function() {
if (v.form()) {
$('.frm').hide('fast');
$('#sf2').show('slow');
}
});
내 유효성 검사 코드
function isPasswordPresent() {
return $('#password').val() !== '';
}
var v = $('#onboardingform').validate({
ignore: [],
rules: {
password: {
required: true,
minlength: 6,
},
confirm_password: {
required: true,
minlength: 6,
equalTo: "#password",
},
password_strength: {
min: {
depends: isPasswordPresent,
param: 60
}
}
},
messages: {
password_strength: {
min: 'Enter a strong password'
}
},
errorElement: "span",
errorClass: "help-inline",
});
확실하지 당신은 당신의 모든 코드를 포함했다하지만 만약 당신이있는 경우에, 당신은 버튼을 대상으로하는 이드의 버튼은 없지만 그 id가있는 버튼은 없습니다. 클릭 이벤트 내부의 양식에도 동일하게 적용됩니다. –
그건 문제가 아니에요. 문제가 무시되었다는 것을 알았습니다 : [] ,. 양식을 삭제해도 양식의 유효성이 검사되지만 종속 규칙은 더 이상 작동하지 않습니다. –
그건 의미가 없습니다. 'ignore : []'는 단지 아무 것도 무시하는 것을 의미합니다; 숨겨진 필드의 유효성을 검사합니다. – Sparky