<body>
<div id="data">
<input type="text" />
<input type="text" />
<input type="text" />
</div>
<script>
// выбрали div c id #data и все INPUT в нем allInput
var data = document.getElementById('data'),
allInput = data.querySelectorAll('input'),
// len - количество INPUT
len = allInput.length;
// обрабатываем событие oninput элемента data
data.oninput = function (e) {
// кроссброузерно получили элемент вызвавший событие
e = e || window.event;
var target = e.target || e.srcElement;
// если событие вызвал не INPUT выходим
if ('INPUT' != target.tagName) return false;
// получили значение элемента
var thisValue = target.value;
// проверяем принадлежит ли значение элемента диапазону. Число ли это и если нет, то значение ставим пусто
if (thisValue <= 0 || thisValue > 5 || isNaN(thisValue)) target.value = '';
// проверяем в цикле содержится ли новое значение в других input
for (var i = 0; i < len; i++) {
//если проверяемый элемент равен текущему продолжить цикл с новой позиции
if (target == allInput[i]) continue;
// если значение равно значению иного INPUT, то значение ставим пусто
if (thisValue == allInput[i].value) target.value = '';
}
}
</script>
</body>