자바스크립트로 특정한 요소를 조작하려면 먼저 DOM에서 원하는 요소를 찾아야 합니다.

요소를 찾기 위해 크게 두가지 방법을 사용합니다.

  • id로 찾기
  • 태그 이름으로 찾기

1. id로 찾기

지정된 id를 이용해 요소를 찾습니다. getElementById()라는 메서드를 사용합니다.

아래와 같은 문장은 id="header"를 지닌 요소를 찾습니다.

만약 요소를 발견했다면 해당 요소를 객체 형태로 반환합니다. 발견되지 않았다면 null을 반환합니다.

var element = document.getElementById("header");

아래의 코드를 실행하면 header라는 id를 가지고 있는 태그를 찾아 콘텐츠를 변경합니다.

<!DOCTYPE html>
<html>
<head>
    <title>My title</title>
</head>
<body>
    <h1 id="header"></h1>

    <script>
        // header라는 id를 가지고 있는 <h1> 태그를 찾아 변수에 저장합니다.
        var element = document.getElementById("header");

        // 요소의 콘텐츠를 변경합니다.
        element.innerText = "Hello World!";

        // 요소의 콘텐츠를 출력합니다.
        document.write(element.innerText);
    </script>
</body>
</html>

버튼을 클릭하면 showText() 메서드를 실행합니다.

showText()는 텍스트 필드의 값을 읽어서 alert로 띄웁니다.

<!DOCTYPE html>
<html>
<head>
    <title>My title</title>
</head>
<body>
    <input type="text" name="text" id="target" />
    <input type="button" value="제출" onclick="showText()">

    <script>
        function showText() {
            alert(document.getElementById("target").value);
        }
    </script>
</body>
</html>

 

2. 태그 이름으로 찾기

지정된 id를 이용해 요소를 찾습니다. getElementByTagName()이라는 메서드를 사용합니다.

지정된 태그를 사용하는 모든 요소를 배열에 넣어서 반환합니다.

<!DOCTYPE html>
<html>
<head>
    <title>My title</title>
</head>
<body>
    <p>첫번째 p 태그</p>
    <p>두번째 p 태그</p>
    <p>세번째 p 태그</p>
    <p>네번째 p 태그</p>
    <p>다섯번째 p 태그</p>

    <script>
        var elements = document.getElementsByTagName("p");
        document.write("0번째 : " + elements[0].innerText);
    </script>
</body>
</html>

document,getElementByTagName("p")를 호출하면 body 태그 안의 p 태그들을 하나의 배열로 반환합니다.

0번째 요소를 출력하면 '첫번째 p 태그'가 화면에 출력됩니다.

 

참고 링크

w3schools - HTML DOM Document