Я создал форму, в которой пользователь вводит минимальное и максимальное количество текстовых областей, которые можно добавить на страницу. Он генерирует код ниже, чтобы подобрать его с помощью JScript:
$minimum .= '<div id="K'.$i.'">'.$min[$i].'</div>';
$maximum .= '<div id="H'.$i.'">'.$max[$i].'</div>';
В JScript я определил цикл, который будет перехватывать вышеуказанные теги div и их innerHTML как числа и помещать их в массив.
var mincount = [];
var maxcount = [];
for(var k=1; k<101; k++) {
mincount[k] = parseInt(document.getElementById("K"+k).innerHTML, 10);
maxcount[k] = parseInt(document.getElementById("H"+k).innerHTML, 10);
}
k определяется как до 100. Итак, я знаю, что это проблема, потому что тогда, если текстовых полей меньше 100, getElementById имеет нулевые значения.
Таким образом, выдается ошибка: Uncaught TypeError: Cannot read property 'innerHTML' of null
Но он должен быть определен до 100. Итак, есть ли какой-либо вариант, который может работать примерно так:
if(mincount[k] == null) {mincount[k] = ""} // in order to avoid null values.
Это не работает. Он все еще получает ошибку.