• ベストアンサー

name属性とid属性

name属性とid属性の定義の違いについて教えてください。 <タグ name="xxx" id="yyy">のように 同じタグ内に、2つを使用していいのでしょうか。 もし、2つを使用してよいのなら、 JavaScriptでの扱いについて教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#199778
noname#199778
回答No.3

一つのタグの中にname属性とid属性を書き込むことは問題ないと思います。 JavaScriptで利用する場合は、先の方の回答に書かれているようにDOMを利用してdocument.getElementsByName()で同じname属性を持つタグを配列として取得したり、他にdocument.getElementById()で特定のid属性を持つタグを取得したりすることが可能になります。 DOMを利用しない場合でも、要素を特定する識別子として利用されますね(form要素など)。 ちなみに、DOMを利用する場合には、同じページ内で複数のタグにname属性で同じ名前を付けることは可能ですが、id属性は基本的に同じページ内で複数のタグに重複して同じ名前をつけることはできない(JavaScriptを利用するとエラーの原因になる)と思います。 また、特定のform要素にアクセスする場合や、フレームセットなどに記述する場合は、name属性でも、同一ページ内の複数のタグに同じ名前を重複して設定すると、誤動作の原因になりえます。 参考になれば幸いです。

その他の回答 (2)

  • ittochan
  • ベストアンサー率64% (2667/4137)
回答No.2

>同じタグ内に、2つを使用していいのでしょうか。 いいです。

  • ittochan
  • ベストアンサー率64% (2667/4137)
回答No.1

InternetExplorer5以上なら JavaScriptでは nameプロパティは document.getElementsByName("xxx"); で同じ名前のnameを配列として利用できます。

関連するQ&A