폼 질문드립니다 ㅠ 채택완료

gotjs1.iwinv.net

 

하단 상담신청 부분에

010포함 11자리가 입력이 돼야만 신청이 가능하게 하려면

소스를 어떻게 수정해야 할까요? 작성 가능하신분 ㅠ

답변 4개

채택된 답변
+20 포인트

Copy
<form id="consultationForm">
    <!-- 전화번호 입력 필드 -->
    <input type="text" id="phone" name="phone" placeholder="010-1234-5678" required>

    <!-- 신청 버튼 -->
    <button type="submit" id="submitBtn">상담 신청</button>
</form>

<script>
document.getElementById('consultationForm').addEventListener('submit', function(event) {
    var phoneInput = document.getElementById('phone').value;

    // 전화번호 형식: 010으로 시작하고 숫자만 포함하여 총 11자리인지 검사
    var phoneRegex = /^010\d{8}$/;

    // 유효성 검사 실패 시
    if (!phoneRegex.test(phoneInput)) {
        alert('전화번호는 010으로 시작하는 11자리 숫자여야 합니다.');
        event.preventDefault();  // 폼 전송을 막음
    }
});
</script>


정규식으로 스크립트 만드실 수도 있습니다.
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

<input type="text" name="wr_subject" id="wr_subject" class="input2 telnum" ~~~

class에 telnum 추가

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

 

그 부분의 html 이 아래처럼 추출되네요.

 

Copy
<input type="text" name="wr_subject" id="wr_subject" class="input2" oninput="validateNumber(this)" maxlength="11">
<button type="submit" class="btn-submit">신청하기</button>

 

html 이 위와 같다는 가정하에...

body 마감 즉 </body> 바로 위에 아래의 스크립트를 입력하세요.

 

Copy
<script>
for (i of document.querySelectorAll(".btn-submit")) {
    if (i.innerHTML == "신청하기") {
        i.addEventListener("click", function() {
            if (wr_subject.value.slice(0, 3) != "010" || wr_subject.value.length != 11) {
                wr_subject.value = "";
                alert("11자리를 정확히 입력하세요");
            }
        });
    }
}
</script>
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

그부분 스크립트 올려보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고