1.getElementById()
getElementById() は、名前が示すように、ID を介して要素を取得するため、ID が設定された要素にのみアクセスできます。
たとえば、docid という ID を持つ DIV があります。
プログラムコード
<div id=docid></div>
その後、getElementById(docid) を使用してこの要素を取得できます。
2.getElementsByName()
これは NAME で要素を取得するのですが、これが GET ELEMENTS ということは、取得したものが要素ではないことを意味します。
DOCUMENT 内の各要素の ID は一意ですが、NAME は繰り返すことができるためです。たとえて言えば、個人の ID カード番号は一意 (理論上は、実際には重複しますが) ですが、名前の重複が多数存在するようなものです。書類の場合
同じ名前のタグが 3 つ以上ある場合、getElementsByName() はこれらの要素を取得して配列を形成できます。
たとえば、次の 2 つの DIV があります。
プログラムコード
<div name=docname id=docid1></div>
<div name=docname id=docid2></div>
次に、getElementsByName(docname) を使用してこれら 2 つの DIV を取得し、getElementsByName(docname)[0] を使用して最初の DIV にアクセスし、getElementsByName(docname)[1] を使用して 2 番目の DIV にアクセスします。
3. getElementsByTagName()
これはTAGNAME(タグ名)で要素を取得するためですが、当然DOCUMENTにも同じタグが付いているので、このメソッドでも配列を取得します。
次の例には 2 つの DIV があり、getElementsByTagName(div) を使用して最初の DIV にアクセスします。
getElementsByTagName(div)[1] は 2 番目の DIV にアクセスします。
標準 DOM を要約すると、特定の要素にアクセスするには標準の getElementById() を使用し、タグにアクセスするには標準の getElementByTagName() を使用してみてください。ただし、IE は getElementsByName() をサポートしていないため、使用は避けてください。
getElementsByName() ですが、getElementsByName() と非標準の document.all[] にはそれぞれ独自の利便性があります。それは、Web サイトのユーザーが使用するブラウザーによって異なります。