4

簡単な初心者の質問のようですが、どこにも答えが見つかりません。

私がこのHTMLを持っているとしましょう:

<form name="myForm">
   <input type="text" name="myTxt">
</form>

次に、次のJavaScriptを使用できます

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

しかし、フォームの代わりにdivがある場合はどうなりますか?

<div name="myDiv">
   <span name="mySpan"></span>
</div>

なぜ私はここで同じことをすることができないのですか

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

getELementById()を使用する代わりに、それが可能であるはずのようですが、私はそれを機能させることができません。

4

2 に答える 2

5

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

于 2012-08-18T16:41:06.263 に答える
0

投稿した構文は、具体的にはフォーム用です。フォームでのみ機能します。

divで機能させるには、次の行を使用する必要があります...

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

これを行う他の方法もあります...

于 2012-08-18T16:43:13.853 に答える