Получение selectedIndex для пользовательской переменной - работает в IE, а не в Firefox
У меня есть следующая функция, которая заполняет текстовые поля HTML в зависимости от выбора пользователя. Поскольку количество ссылок может быть от 1 до многих, я передаю идентификатор ссылки, которую они обновляют.
Я получаю сообщение об ошибке:
var IndexOfReferenceSelect = ReferenceSelect.selectedIndex;
тот ReferenceSelect
является null
, Как мне установить ReferenceSelect
в Firefox? Я думал, используя getElementById
должно сработать. Это происходит в IE, но не в Firefox.
function SelectReference(ReferenceNum){
var i;
var ReferenceSelect = document.getElementById("Reference_" + ReferenceNum);
var Author = document.getElementById("Author_Last_Name_" + ReferenceNum);
var Title = document.getElementById("Title_" + ReferenceNum);
var Edition = document.getElementById("Edition_" + ReferenceNum);
var Publisher = document.getElementById("Publisher_" + ReferenceNum);
var Year1 = document.getElementById("Year_" + ReferenceNum);
var Pages = document.getElementById("Pages_" + ReferenceNum);
var ReferenceList = new Array(<%=strBigListOfOptionTagGroups%>);
var IndexOfReferenceSelect = ReferenceSelect.selectedIndex;
var IndexOfReferences = ReferenceList[IndexOfReferenceSelect].split("|");
Author.value = IndexOfReferences[0];
Title.value = IndexOfReferences[1];
Edition.value = IndexOfReferences[2];
Publisher.value = IndexOfReferences[3];
Year1.value = IndexOfReferences[4];
if (IndexOfReferenceSelect == 0){
Pages.value = '';
}
}
1 ответ
С помощью document.getElementById
это точно способ сделать. Таким образом, проблема может заключаться в том, что DOM еще не загружен должным образом, когда вы пытаетесь получить доступ к элементу; или ReferenceNum
неправильно настроен; или что вы установили name
атрибут вместо id
: в этом случае в IE есть ошибка, которая не делает различий между именем или идентификатором, и он возвращает элемент, в который возвращаются браузеры, которые следуют стандартам null
,