У меня возникли проблемы с getElementById, возвращающими null. Я попытался поместить в него идентификатор, который отлично работает.getElementById return null
Эта функция вызывается кнопкой отправки, она извлекает имена загруженных файлов и записывает их в скрытые поля.
function onSubmitting() {
try {
var AU = $('#uploader').data('AU');
var file_list = AU.files;
var i = 0;
while (i < 10) {
var tempName = "image" + i.toString();
if (!(typeof file_list[i] === "undefined")) {
document.getElementById(tempName).value = "test";
}
i++;
}
}
catch (err) {
alert(err.message);
}
}
Соответствующий HTML здесь:
<input type="hidden" name="image1" id="image1" />
<input type="hidden" name="image2" id="image2" />
<input type="hidden" name="image3" id="image3" />
<input type="hidden" name="image4" id="image4" />
<input type="hidden" name="image5" id="image5" />
<input type="hidden" name="image6" id="image6" />
<input type="hidden" name="image7" id="image7" />
<input type="hidden" name="image8" id="image8" />
<input type="hidden" name="image9" id="image9" />
<input type="hidden" name="image10" id="image10" />
Спасибо за любую помощь
Вместо того, чтобы называть их так, использовать общий класс. Это будет намного чище. – Zirak
Возможный дубликат [Почему метод jQuery или DOM, такой как \ getElementById \ 'не находит элемент?] (Http://stackoverflow.com/questions/14028959/why-does-jquery-or-a-dom- method-such-as-getelementbyid-not-find-the-element) –