У меня есть форма с большим количеством элементов ввода, и пользователю ничего не сообщается, какие поля необходимы. Проблема в том, что у меня нет доступа к его HTML-коду.
Итак, я пишу этот JavaScript:
var allInputs = document.querySelectorAll("input");
var newItem = document.createElement("LI");
var textnode = document.createTextNode("(*)");
newItem.appendChild(textnode);
for (var i = 0; i < allInputs.length; i++) {
if(allInputs[i].hasAttribute('required') == true){
allInputs[i].parentNode.insertBefore(newItem, allInputs[i]);
}
}
Результат: добавляется (*) только перед последним вводом. Я попытался запустить этот код в консоли браузера построчно и заметил, что он добавляет текст на ввод и стирает предыдущий.
Я не веб-разработчик и использую примеры, найденные в Интернете, поэтому для меня это сложно :/