Почему результат alert меняется постоянно, ведь если в инпуте введены числа то должно быть всегда true. Если нажимать на кнопку отправить несколько раз то сначала выводит true, а в следующий раз false и так далее. В чем может быть причина?
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form id="form">
<div>
<label>
<div>Телефон</div>
<input type="text" name="phone" value="1234">
</label>
</div>
<div>
<input type="submit" value="Отправить">
</div>
</form>
<script>
var phoneReg = new RegExp('^[0-9]+$', 'gi');
var form = document.getElementById('form');
form.addEventListener('submit', function(e){
e.preventDefault();
var inputs = this.getElementsByTagName('input');
var input = Array.prototype.slice.call(inputs);
input.forEach(function(item){
if (item.name == 'phone'){
alert(phoneReg.test(item.value));
}
});
});
</script>
</body>
</html>