HTML DOM의 input number max 속성은 HTML 문서에서 type="number"로 지정된 입력 필드의 max 속성 값을 가져오거나 수정할 수 있게 해주는 기능입니다. 이 속성을 활용하면 자바스크립트만으로 숫자 입력 필드에 허용되는 최댓값을 동적으로 제어할 수 있습니다.
문법(Syntax)
max 속성의 기본 문법은 다음과 같습니다.
1. max 값 반환하기
object.max
2. max 값 수정하기
object.max = "number"
예제(Example)
다음은 input number max 속성을 활용한 실전 예제입니다. 학번(roll number)을 입력받아 유효 범위(1~60)를 검사하는 코드입니다.
<!DOCTYPE html>
<html>
<head>
<style>
html{
height:100%;
}
body{
text-align:center;
color:#fff;
background: linear-gradient(62deg, #FBAB7E 0%, #F7CE68 100%) center/cover no-repeat;
height:100%;
}
p{
font-weight:700;
font-size:1.1rem;
}
input{
display:block;
width:35%;
border:2px solid #fff;
background-color:transparent;
color:#fff;
font-weight:bold;
padding:8px;
margin:1rem auto;
}
.btn{
background:#0197F6;
border:none;
height:2rem;
border-radius:2px;
width:35%;
margin:2rem auto;
display:block;
color:#fff;
outline:none;
cursor:pointer;
}
.show{
font-size:1.5rem;
font-weight:bold;
}
</style>
</head>
<body>
<h1>DOM Input number max/min property Demo</h1>
<p>Enter your roll number (between 1 and 60)</p>
<input type="number" class="numberInput" min="1" max="60">
<button type="button" onclick="showMySelection()" class="btn">Show Roll Number</button>
<div class="show"></div>
<script>
function showMySelection() {
var numberInput = document.querySelector(".numberInput");
var showMsg = document.querySelector(".show");
console.log(numberInput.min,numberInput.max);
if(numberInput.value === ''){
showMsg.innerHTML="Please enter value!!";
} else{
if((numberInput.value <= 1) && (numberInput.value <= 60)){
showMsg.innerHTML = numberInput.value;
} else{
showMsg.innerHTML = "Please enter correct roll number!!";
}
}
}
</script>
</body>
</html>실행 결과(Output)
위 코드를 실행하면 다음과 같은 화면을 확인할 수 있습니다.

1부터 60 사이의 학번을 입력한 후 "Show Roll Number" 버튼을 클릭하면, 입력한 학번이 그대로 화면에 표시됩니다.

반대로 범위를 벗어난 학번을 입력하고 버튼을 클릭하면, 아래와 같이 경고 메시지가 출력됩니다.

핵심 정리
max속성은 값을 읽는 것과 수정하는 것이 모두 가능합니다.min속성과 함께 사용하면 입력값의 허용 범위를 최솟값과 최댓값 양쪽에서 모두 제한할 수 있습니다.- 서버로 데이터를 전송하기 전에 클라이언트 측에서 빠르게 유효성을 검사해야 하는 상황에서 특히 유용합니다.