На странице размещены 5+ блоков, состоящих из текстового поля и поля ввода типа checkbox.В текстовые поля вводить только числа
На странице размещены 5+ блоков, состоящих из текстового поля и поля ввода типа checkbox. В текстовые поля вводить только числа.
При нажатии кнопки, проверить корректность введенных данных, если есть ошибки уведомить пользователя через alert.
Кроме этого сформировать массив из числовых значений, с условием, если в соответствующем блоке checkbox активный, в массив записывается число в два раза меньше входное.
Вывести сформирован массив в абзац.
let form = document.forms.test;
let text = form.querySelectorAll('[type=text]');
let checkbox = form.querySelectorAll('[type=checkbox]');
form.addEventListener('submit', (event) => {
let result = [];
event.preventDefault();
for (let i = 0; i < text.length; i++) {
let value = text[i].value;
if (value === '') {
continue;
};
let regexp = /^\d+$/;
if (!regexp.test(value)) {
alert('Неверное значение:' + value);
continue;
};
if (checkbox[i].checked) {
result.push(value / 2);
};
};
form.result.value = result;
});
<form name="test">
Значения<br>
<input type="text"><input type="checkbox"><br>
<input type="text"><input type="checkbox"><br>
<input type="text"><input type="checkbox"><br>
<input type="text"><input type="checkbox"><br>
<input type="text"><input type="checkbox"><br> Результат:
<br>
<input name="result"><br>
<input type="submit" value="Получить результат">
</form>