Q:

Как сделать что бы в input вводилось только числа в диапазоне?

Вот такие 3 input 
то есть день месяц и год
   <input type="text" placeholder="dd" name="day" oninput="this.value = this.value.replace(/[^0-9]/g, '').replace(/(\..*)\./g, '$1');" class="day" >

нашел вот такой код не позволяет вводить ничего кроме цифр. Но как добавить диапазоны??
то есть нужно сделать что бы не вводились числа больше 30, 12, 2009

A:

<input type="text" placeholder="dd" name="day" oninput="this.value=this.value.replace (/\D/, '')" id="day" >

<script>
var elem = document.getElementById('day');
elem.onkeyup=function(e){
    var value = parseInt(e.target.value);
    if(value > 30) {
        e.target.value = e.target.value.slice(0, -1);
    }
}
</script>

