Computer >> 컴퓨터 >  >> 프로그래밍 >> HTML

HTML DOM 테이블 createCaption() 메서드 – 캡션 동적 생성 방법

HTML DOM의 table createCaption() 메서드는 비어 있는 <caption> 요소를 새로 생성한 뒤, HTML 문서 내 테이블에 추가하는 기능을 합니다. 이 메서드를 활용하면 자바스크립트만으로 테이블에 제목(캡션)을 동적으로 삽입할 수 있습니다.

구문(Syntax)

createCaption() 메서드의 기본 사용법은 다음과 같습니다.

object.createCaption()

이 메서드는 별도의 매개변수 없이 호출되며, 반환값으로 새로 생성된 <caption> 요소 객체를 돌려줍니다. 따라서 반환된 객체에 innerHTML 등을 사용해 원하는 캡션 텍스트를 지정할 수 있습니다.

예제(Example)

아래 예제는 버튼을 클릭하면 테이블에 캡션이 자동으로 생성되고, "Student Data"라는 텍스트가 캡션에 입력되는 코드입니다.

<!DOCTYPE html>
<html>
<style>
    body {
        color: #000;
        background: lightblue;
        height: 100vh;
        text-align: center;
    }
    table {
        margin: 2rem auto;
    }
    caption {
        color: #db133a;
    }
    .btn {
        background: #db133a;
        border: none;
        height: 2rem;
        border-radius: 2px;
        width: 40%;
        display: block;
        color: #fff;
        outline: none;
        cursor: pointer;
        margin: 1rem auto;
    }
    .show {
        font-size: 1.2rem;
    }
</style>
<body>
<h1>DOM Table createCaption() Method Demo</h1>
<table border="2">
<tr>
<td>Name</td>
<td>Roll No.</td>
</tr>
<tr>
<td>John</td>
<td>071717</td>
</tr>
<tr>
<td>Jane</td>
<td>031717</td>
</tr>
</table>
<button onclick="create()" class="btn">Create Caption</button>
<script>
    function create() {
        var tableCaption = document.querySelector('table').createCaption();
        tableCaption.innerHTML = "Student Data";
    }
</script>
</body>
</html>

코드 설명

  • document.querySelector('table'): 문서에서 첫 번째 테이블 요소를 선택합니다.
  • createCaption(): 선택한 테이블에 새로운 <caption> 요소를 생성하여 추가합니다.
  • tableCaption.innerHTML = "Student Data": 생성된 캡션 요소에 텍스트를 삽입합니다.

실행 결과(Output)

페이지를 처음 열면 아래와 같이 캡션이 없는 상태의 테이블이 화면에 표시됩니다.

HTML DOM 테이블 createCaption() 메서드 – 캡션 동적 생성 방법

여기서 "Create Caption" 버튼을 클릭하면, 자바스크립트 함수가 실행되어 테이블 상단에 캡션이 생성됩니다.

HTML DOM 테이블 createCaption() 메서드 – 캡션 동적 생성 방법

버튼 클릭 후에는 테이블 위쪽에 붉은색 텍스트로 "Student Data"라는 캡션이 나타나는 것을 확인할 수 있습니다. 만약 테이블에 이미 캡션이 존재한다면, createCaption() 메서드는 새로운 캡션을 만들지 않고 기존 캡션을 그대로 반환합니다.