Почему только точки могут ссылаться на точечную нотацию?

Это похоже на простой вопрос начинающих, но я не могу найти ответ нигде.

Предположим, у меня есть этот HTML:

то я могу использовать следующий javascript

 document.myForm.myTxt.value = 'foo'; 

Но что, если у меня есть div вместо формы?

 

Почему я не могу сделать то же самое здесь, как

 document.myDiv.mySpan.innerHTML = "bar"; 

Похоже, что это должно быть возможно, вместо того, чтобы использовать getELementById (), но я не могу заставить его работать.

Как разработано W3C.

Ни о чем не спорить. Вы можете получить доступ к HTMLCollection всех форм на странице с помощью document.forms , так же, как вы можете создавать изображения с document.images , апплетами с document.applets Ссылки, ссылки с document.links и привязки с document.anchors .

http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-1689064

Синтаксис, который вы опубликовали, предназначен для формы, чтобы быть конкретным .. Он будет работать только с формами.

Вам нужно будет использовать следующую строку, чтобы заставить ее работать для div …

 document.getElementsByName("myDiv")[0].getElementsByTagName("span")[0].innerHTML = "bar"; 

Есть и другие способы сделать это тоже …