Мне нужно создать функцию, которая вызывается нажатием кнопки, которая позволяет мне создавать каждый символ в нескольких текстовых полях с заглавной буквы, пока код не прочитает текстовое поле без какого-либо содержимого в нем. Мне нужно использовать цикл while в моей функции, чтобы выполнить задачу.
Чтобы быть более точным, мне нужна функция для изменения текста полей по порядку сверху вниз, чтобы процесс изменения текста в верхний регистр мог остановиться, когда в поле ничего нет.
Я думал, что мой код будет работать, но, видимо, это не так.
У меня есть кнопка, которая превращает содержимое текстовых полей в верхний регистр, но мне нужна вторая кнопка, чтобы выполнить работу, описанную выше.
var theInputedText;
function buttonClicked() {
for (var textField = 0; textField <= 9; textField++) {
document.textInput.elements[textField].value =
document.textInput.elements[textField].value.toUpperCase();
}
}
function secondButtonClicked() {
var textLength = document.textInput.elements[0].value.length;
var initialTextField = 0;
var textFields = 0;
while (document.textInput.elements[textFields].value != null)
document.textInput.elements[textFields].value =
document.textInput.elements[textFields].value.toUpperCase();
textFields++;
}
<body>
<form name="textInput">
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>
<input type="text"><br><br>
<input type="button" Value="Change First Letter to Uppercase" onclick=buttonClicked()>
<input type="button" Value="Change all Letters to Uppercase" onclick=secondButtonClicked()>
</form>
</body>
Когда пользователь вводит текстовые поля, скажем, первые 5 пропускают 6 и заполняют остальные, затем нажимают вторую кнопку. Первые 5 полей должны превратиться в заглавные буквы, а следующие 5 остаются в том виде, в котором они были напечатаны.
Фактический результат в том, что он просто не работает, и я не знаю почему.