<script>
    function oninput_form_password(f){
        f.newpassword.setCustomValidity('');
        if(f.newpassword.value.length < f.newpassword.minLength){
            f.newpassword.setCustomValidity(`새 비밀번호는 ${f.newpassword.minLength}자리 이상이어야 합니다.`);
        }else if(f.newpassword.value.length > f.newpassword.maxLength){
            f.newpassword.setCustomValidity(`새 비밀번호는 ${f.newpassword.maxLength}자리 이하이어야 합니다.`);
        }else{
            const v = f.newpassword.value;
            if(/[^0-9a-zA-Z\!@#$%\^&\*]/.test(v)){
                f.newpassword.setCustomValidity('새 비밀번호에 허용되지 않는 문자가 사용되었습니다.');
            }else if(!(/[0-9]/.test(v))){
                f.newpassword.setCustomValidity('새 비밀번호에 숫자가 사용되지 않았습니다.');
            }else if(!(/[a-zA-Z]/.test(v))){
                f.newpassword.setCustomValidity('새 비밀번호에 영문이 사용되지 않았습니다.');
            }else if(!(/[\!@#$%\^&\*]/.test(v))){
                f.newpassword.setCustomValidity('새 비밀번호에 특수문자가 사용되지 않았습니다.');
            }
        }
        f.newpassword_confirmation.setCustomValidity('');
        if(f.newpassword.value != f.newpassword_confirmation.value){
            f.newpassword_confirmation.setCustomValidity('새 비밀번호가 일치하지 않습니다.');
        }
    }
</script>