На странице размещены 5+ блоков, состоящих из текстового поля и поля ввода типа checkbox
На странице размещены 5+ блоков, состоящих из текстового поля и поля ввода типа checkbox. В текстовые поля вводить только числа. При нажатии кнопки, проверить корректность введенных данных, если есть ошибки уведомить пользователя через alert. Кроме этого сформировать массив из числовых значений, с условием, если в соответствующем блоке checkbox активный, в массив записывается число в два раза меньше входное. Вывести сформирован массив в абзац.
<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>
js
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;
});