Page 1 of 1
객체 배열 얻기가 안됩니다.
Posted: 2005 06 21 16:01 05
by 손님
<a id='id1'>아이디1</a>
<a id='id1'>아이디1</a>
<a id='id1'>아이디1</a>
<a id='id2'>아이디2</a>
<a id='id2'>아이디2</a>
<a id='id2'>아이디2</a>
-----------------------------------------
동일한 아이디를 가진 객체를 배열로 접근하려합니다.
document.getElementsByName("id1").length
이렇게 시도하였으나 결과는 0 이네요..
document.getNamedItem("id1") 이것도 안되고..
도와주세요~
에공 태그가 사라졌네요..
Posted: 2005 06 21 16:20 36
by 손님
<a id="id1">아이디1 </a>
<a id="id1">아이디1 </a>
<a id="id1">아이디1 </a>
<a id="id2">아이디2 </a>
<a id="id2">아이디2 </a>
<a id="id2">아이디2 </a>
동일한 아이디를 가진 객체를 배열로 접근하려합니다.
document.getElementsByName("id1").length
이렇게 시도하였으나 결과는 0 이네요..
document.getNamedItem("id1") 이것도 안되고..
도와주세요~
Posted: 2005 06 21 18:19 25
by hyeonseok
id 의 값은 한개의 문서 안에 한개만 존재 할 수 있습니다.
name 은 여러개가 가능합니다.
document.getElementsByName("id1").length
은 name="id1" 인 element 를 가져오게 됩니다.
엘리먼트 셋을 가져 오시려면 name 을 사용하셔야 합니다. id 는 한개만 참조가 가능합니다.
id는 문서에 단 하나
Posted: 2005 06 21 19:14 52
by 박민권
id는 문서에 하나만 존재하여야 합니다.
때문에 getElementById 인 것입니다.
getElementsByName 와 잘 비교해보세요.
get(Element)ById, get(Elements)ByName -> 단수와 복수의 차이가 보이죠? :)
Code: Select all
<input type="text" name="objs[]">
<input type="text" name="objs[]">
<input type="text" name="objs[]">
document.getElementsByName('objs').length;
위의 코드처럼은 가능합니다.
Code: Select all
<a id='id1'>
<a id='id2'>
<a id='id3'>
for(i=1;i<=3;i++){
document.getElementById('id'+i);
}
id로 접근하려면 위와같이 하실 수 있습니다.
Code: Select all
<div id='box'>
<a>1</a><a>2</a><a>3</a>
</div>
document.getElementById('box').childNodes.length; //노드의 갯수
위의 코드처럼 노드의 갯수를 알아 낼 수도 있습니다.
단 여백도 text객체로 잡히므로 총 노드의 갯수는 5개가 나옵니다.
노드를 통한 접근에는
childNodes
firstChild
lastChild
appendChild
removeChild
... 그외 다수
위와 같은 메소드가 존재합니다.
구글 검색등을 통해 노드를 통한 접근 샘플 소스를 구하실 수 있을 겁니다.