Chrome и Firefox по-разному обрабатывают JavaScript/HTML
Итак, самая странная вещь произошла здесь. У меня есть php-файл с Javascript для записи на элементы, основанные на событиях на веб-странице. И есть 3 HTML-формы на странице. Один представляет собой окно поиска, один скрывает все входные данные и отправляется для определенного события, а один представляет собой текстовое поле и кнопку, при нажатии на которую javascript записывает текст в определенный элемент на странице. Кроме того, эта третья форма сама записывается в документ с помощью JavaScript при нажатии другой кнопки. Проблема заключается в том, что при выполнении определенных операций с этой третьей формой мне нужно ссылаться на одно из его входных значений (newSkillName).
Так что для этой третьей формы, в Chrome-
document.forms [1].newSkillName.value
работает, пока в Firefox-
document.forms [2].newSkillName.value
работает.
Мне, однако, удалось исправить код. Но мне все еще любопытно. Почему Chrome и Firefox по-разному обрабатывают отклонения? Любая идея?
2 ответа
Присвойте элементам формы уникальные атрибуты идентификатора и свяжите их с document.getElementById(id).
Вы также можете использовать атрибут NAME и ссылаться на форму по имени document.forms["name_of_form"];
Быстрый обходной путь / устранение проблемы заключается в том, чтобы охотиться по полю в DOM другим способом. Например, с id='NewSkillName' используйте document.getElementById('NewSkillName').value
,