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

HTML DOM 폼(Form) action 속성 완벽 가이드

HTML DOM의 form action 속성은 form 요소의 action 속성과 연결된 속성입니다. 이 속성은 사용자가 폼을 제출한 후, 폼 데이터가 전송될 웹 페이지의 주소를 지정하는 역할을 합니다. 즉, 폼이 제출될 때 데이터를 어디로 보낼지 결정하는 중요한 속성입니다.

문법(Syntax)

form action 속성을 설정하는 기본 문법은 다음과 같습니다.

formObject.action = URL

여기서 URL은 폼 데이터를 전송할 대상 주소를 의미하며, 절대 URL(예: https://example.com/submit) 또는 상대 URL(예: /submit.php) 모두 사용할 수 있습니다.

예제(Example)

다음은 form action 속성을 활용한 실제 예제 코드입니다.

<!DOCTYPE html>
<html>
<head>
<style>
    form{
        border:2px solid blue;
        margin:2px;
        padding:4px;
    }
</style>
<script>
    function changeAction() {
        document.getElementById("FORM1").action = "/example_web.asp";
        document.getElementById("Sample").innerHTML = "폼의 action 속성 값이 /example_web.asp 로 변경되었습니다";
    }
</script>
</head>
<body>
<h1>Form action 속성 예제</h1>
<form id="FORM1" action="/sample.php">
<label>사용자 이름 <input type="text" name="usrN"></label> <br><br>
<label>비밀번호 <input type="password" name="pass"></label>
</form>
<br>
<button onclick="changeAction()">변경</button>
<p id="Sample"></p>
</body>
</html>

실행 결과(Output)

위 코드를 실행하면 파란색 테두리가 있는 폼과 '변경' 버튼이 화면에 표시됩니다.

HTML DOM 폼(Form) action 속성 완벽 가이드

'변경' 버튼을 클릭하면 다음과 같이 action 속성이 변경된 결과를 확인할 수 있습니다.

HTML DOM 폼(Form) action 속성 완벽 가이드

코드 상세 분석

1. 폼 생성

먼저 id가 "FORM1"이고 action 값이 "/sample.php"인 폼을 생성했습니다. action 속성 값이 상대 URL이므로, 폼 데이터는 sample.php 페이지로 전송됩니다. 이 폼에는 텍스트 입력 필드와 비밀번호 입력 필드가 포함되어 있습니다.

<form id="FORM1" action="/sample.php">
<label>사용자 이름 <input type="text" name="usrN"></label> <br><br>
<label>비밀번호 <input type="password" name="pass"></label>
</form>

2. 변경 버튼 생성

그다음 클릭 시 changeAction() 함수를 실행하는 버튼을 만들었습니다.

<button onclick="changeAction()">변경</button>

3. changeAction() 함수 동작

changeAction() 함수는 getElementById() 메서드로 "FORM1" 요소를 가져온 뒤, 해당 폼의 action 속성 값을 "/example_web.asp"로 변경합니다. 그리고 id가 "Sample"인 단락(p 태그)의 innerHTML 속성을 활용해, 변경 사항을 사용자에게 텍스트로 표시합니다.

function changeAction() {
    document.getElementById("FORM1").action = "/example_web.asp";
    document.getElementById("Sample").innerHTML = "폼의 action 속성 값이 /example_web.asp 로 변경되었습니다";
}

정리

이처럼 JavaScript의 form action 속성을 활용하면 페이지를 새로고침하지 않고도 동적으로 폼의 전송 대상을 변경할 수 있습니다. 조건에 따라 서로 다른 처리 페이지로 데이터를 전송해야 하는 경우 매우 유용하게 사용됩니다.