2012-10-25 2 views
2

Я работаю над веб-сайтом, который был закодирован некоторое время назад. Я нашел функцию Javascript, который использует следующий синтаксис для установки значения для текстового поляВыбор элемента DOM с использованием javascript document.myElementsName

document.myForm.myText.value = "value"; 

Я проверил этот код и он работает в IE, Firefox и Chrome.

Вопрос в том, подходит ли этот способ установки/выбора элементов DOM в будущем (то есть он будет обесцениваться)? Должен ли я изменить экземпляры этого типа элементов, выбрав более стандартный (по моему опыту) код ниже?

document.getElementById("myText").value = "value"; 

Заранее спасибо.

ответ

1

Я не думаю, что это повлияет на то, что представление браузера dom будет иметь изменения, чтобы сломать код; Это, вероятно, сломает половину веб-страниц в Интернете.

Ваш код лучше первого, потому что тогда вы будете кодировать контракт по методу getElementById, который возвращает HTMLElement, который вам нужен. Это означает, что JS Engine должен придерживаться стандартов ECMAScript и возвращать точный элемент. Следовательно, вашему коду не нужно беспокоиться, если завтра браузер изменит его структуру, а ваш элемент теперь будет document.forms.myForm.myText.value вместо того, что вы ожидали.

+0

Спасибо за ответ. – DrCheesetree

Смежные вопросы