Я с трудом в перескакивая через нулевые значения при использовании .innerHTML у меня есть что-то вроде этого:пропуска через нулевые значения в innerHTML
var inputLastIndexValue = document.getElementById("FileCount").innerHTML;
var inputArray = [];
for(var indexCounter = 0; indexCounter <= inputLastIndexValue; indexCounter++){
var elementID = indexCounter + ".File";
console.log("ElementID: " + elementID);
if(document.getElementById(elementID).innerHTML)
{
inputArray[indexCounter] = document.getElementById(elementID).innerHTML;;
console.log(inputArray[indexCounter] + ":" + indexCounter);
}
То, что я пытаюсь выполнить получает имена файлов, которые я загрузить для заполнения массива, в котором я могу выполнить поиск. Я знаю, что этот скрипт останавливается и бросает нулевую ошибку при попытке найти то, чего не существует.
Здесь стоит отметить, что в javascript последующие сравнения игнорируются, если предыдущие являются истинными. Таким образом, вы можете запустить сравнение, чтобы увидеть, является ли внешний NULL &&, а затем проверить, является ли внутренний значением null в одном и том же операторе if, и никакая ошибка null не срабатывает, если внешняя является нулевой, если вы проверяете их в этом в том же заявлении. – joshstrike
@joshstrike: Однако его 'innerHTML', вероятно, никогда не будет пустым. – SLaks
Вы имеете в виду проверить это, изменив код таким образом? 'if (typeof document.getElementById (elementID)! = 'undefined' && document.getElementById (elementID) .innerHTML)' – Popnoodles