Я работаю над некоторой проверкой формы, где я просматриваю элементы в своей форме с помощью цикла for (elem in myform), проверяя его на наличие списка обязательных полей и устанавливая цвет фона "розовым", если требуемое поле не имеет значения,
Чтобы сбросить цвет по умолчанию, я вернул свойство null в начало цикла.
Он работает безупречно, однако по какой-то странной причине он не запускает мой вызов скрипта google после цикла. (или предупреждение, которое я пытался поставить там)
Проработанные часы, пытаясь выяснить причину, комментируя биты и биты, закончились тем, что: если я удалю часть сброса цвета.. работает сценарий google, и все работает отлично (кроме цвета уже заполненных полей остается розовым)
if(thisEl.style.backgroundColor == "pink")
{
thisEl.style.backgroundColor = null;
}
Я даже пробовал комментировать фактическое изменение значения и оставил только предложение if, но все равно он не работает. Как-то доступ к этому свойству мешает мне что-то делать после цикла.
Решение (довольно обходное решение): некоторые из моих объектов не имели свойства стиля и пытались получить доступ к backgroundColor из этого исключения, поэтому я проверяю, существует ли свойство стиля сначала с if (thisEl.style! = Null)
Решение. Некоторые из моих объектов не имели свойства стиля и пытались получить доступ к backgroundColor, которые выбрали исключение, поэтому тестирование, если свойство стиля существует сначала с if (thisEl.style! = Null), решило проблему.
Первоначально я не знал, почему были такие объекты, поэтому кредит отправляется на @Traktor53, указывая, что группы переключателей представлены в виде списка RadioNodeList в коллекции элементов формы, которая не имеет свойства объекта стиля. (см. комментарии для деталей)