Ввод пробела перед тем, как что-либо в моем вводе приводит к тому, что значение, читаемое через JavaScript, будет пустым. Когда в середине есть другие пробелы, они не пустые, но когда я вставляю пробел в начале после ввода некоторого текста, текст не отображается в отладчике на входном значении.
Javascript
inputs = document.querySelectorAll(".report_info > div > input");
console.log(inputs);
for(let i = 0; i < inputs.length; i++){
inputs[i].classList += " empty";
inputs[i].addEventListener("input", evt=>{
evt.preventDefault();
value = inputs[i].value.trim();
if(value)
inputs[i].classList.remove("empty");
else
if(!inputs[i].classList.contains("empty"))
inputs[i].classList += " empty";
})
}
HTML-код, который должен работать на
<div class="report_info">
<div>
<input type="text" name="students_name" required>
<label for="students_name">
<span>Student's Name</span>
</label>
</div>
<div>
<input type="text" name="student_id" required>
<label for="student_id">
<span>ID</span>
</label>
</div>
<div>
<input type="email" name="parent_phone" required>
<label for="parent_phone">
<span>Parent's Tele #</span>
</label>
</div>
<div>
<input type="text" name="semester_year" required>
<label for="semester_year">
<span>Semester/Year</span>
</label>
</div>
<div>
<input type="number" name="days_present" required>
<label for="days_present">
<span>Days Present</span>
</label>
</div>