Today's

길을 나서지 않으면 그 길에서 만날 수 있는 사람을 만날 수 없다

그냥글쓰기

JavaScript와 jQuery를 사용한 날짜 유효성 검증 및 문자열 길이 체크 (2)

Billcorea 2024. 9. 29. 15:29
반응형

JavaScript와 jQuery를 사용한 날짜 유효성 검증 및 문자열 길이 체크

날자 처리


웹 개발을 하다 보면 날짜 유효성 검증과 문자열 길이 체크는 자주 필요한 기능입니다. 이번 포스트에서는 JavaScript와 jQuery를 사용하여 이러한 기능을 구현하는 방법을 소개하겠습니다.

1. JavaScript에서 날짜 유효성 검증
JavaScript에서 날짜 유효성을 검증하는 방법은 여러 가지가 있습니다. 여기 몇 가지 방법을 소개합니다.

1.1 Date 객체를 사용한 검증
JavaScript

function isValidDate(dateString) {
    const date = new Date(dateString);
    return !isNaN(date);
}

console.log(isValidDate("2023-09-24")); // true
console.log(isValidDate("2023-13-24")); // false
AI가 생성한 코드입니다. 신중하게 검토하고 사용하세요. FAQ의 자세한 정보.
1.2 Date.parse() 함수 사용
JavaScript

function isValidDate(dateString) {
    return !isNaN(Date.parse(dateString));
}

console.log(isValidDate("2023-09-24")); // true
console.log(isValidDate("2023-13-24")); // false
AI가 생성한 코드입니다. 신중하게 검토하고 사용하세요. FAQ의 자세한 정보.
1.3 특정 형식의 날짜 검증
JavaScript

function isValidDateFormat(dateString) {
    const regex = /^(0[1-9]|[12][0-9]|3[01])\/(0[1-9]|1[0-2])\/\d{4}$/;
    return regex.test(dateString);
}

console.log(isValidDateFormat("24/09/2023")); // true
console.log(isValidDateFormat("2023/09/24")); // false
AI가 생성한 코드입니다. 신중하게 검토하고 사용하세요. FAQ의 자세한 정보.
2. YYYYMMDD 형식의 날짜 유효성 검증
YYYYMMDD 형식의 날짜 유효성을 검증하려면 정규 표현식과 Date 객체를 함께 사용할 수 있습니다.

JavaScript

function isValidDate(dateString) {
    const regex = /^\d{4}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])$/;
    if (!regex.test(dateString)) {
        return false;
    }

    const year = parseInt(dateString.substring(0, 4), 10);
    const month = parseInt(dateString.substring(4, 6), 10) - 1;
    const day = parseInt(dateString.substring(6, 8), 10);
    const date = new Date(year, month, day);

    return date.getFullYear() === year && date.getMonth() === month && date.getDate() === day;
}

console.log(isValidDate("20230924")); // true
console.log(isValidDate("20231324")); // false
console.log(isValidDate("20230229")); // false
AI가 생성한 코드입니다. 신중하게 검토하고 사용하세요. FAQ의 자세한 정보.
3. JSP에서 날짜 유효성 검증 함수
JSP 페이지에서 Java 코드를 사용하여 날짜 유효성을 검증할 수 있습니다.

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.text.SimpleDateFormat"%>
<%@ page import="java.util.Date"%>
<!DOCTYPE html>
<html>
<head>
    <title>Date Validation</title>
</head>
<body>
    <h2>YYYYMMDD 형식의 날짜 유효성 검증</h2>
    <form method="post">
        <label for="date">날짜 (YYYYMMDD):</label>
        <input type="text" id="date" name="date">
        <input type="submit" value="검증">
    </form>

    <%
        String dateString = request.getParameter("date");
        if (dateString != null) {
            boolean isValid = isValidDate(dateString);
            if (isValid) {
                out.println("<p>유효한 날짜입니다: " + dateString + "</p>");
            } else {
                out.println("<p>유효하지 않은 날짜입니다: " + dateString + "</p>");
            }
        }

        boolean isValidDate(String dateString) {
            if (dateString == null || !dateString.matches("\\d{8}")) {
                return false;
            }
            try {
                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
                sdf.setLenient(false);
                Date date = sdf.parse(dateString);
                return dateString.equals(sdf.format(date));
            } catch (Exception e) {
                return false;
            }
        }
    %>
</body>
</html>

4. jQuery를 사용한 날짜 유효성 검증
jQuery를 사용하여 YYYYMMDD 형식의 날짜 유효성을 검증하는 방법입니다.

HTML

<!DOCTYPE html>
<html>
<head>
    <title>Date Validation</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <script>
        $(document).ready(function() {
            $("#validateDate").click(function() {
                const dateString = $("#date").val();
                if (isValidDate(dateString)) {
                    alert("유효한 날짜입니다: " + dateString);
                } else {
                    alert("유효하지 않은 날짜입니다: " + dateString);
                }
            });

            function isValidDate(dateString) {
                const regex = /^\d{4}(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[01])$/;
                if (!regex.test(dateString)) {
                    return false;
                }

                const year = parseInt(dateString.substring(0, 4), 10);
                const month = parseInt(dateString.substring(4, 6), 10) - 1;
                const day = parseInt(dateString.substring(6, 8), 10);
                const date = new Date(year, month, day);

                return date.getFullYear() === year && date.getMonth() === month && date.getDate() === day;
            }
        });
    </script>
</head>
<body>
    <h2>YYYYMMDD 형식의 날짜 유효성 검증</h2>
    <label for="date">날짜 (YYYYMMDD):</label>
    <input type="text" id="date" name="date">
    <button id="validateDate">검증</button>
</body>
</html>
AI가 생성한 코드입니다. 신중하게 검토하고 사용하세요. FAQ의 자세한 정보.
5. jQuery를 사용한 문자열 길이 체크
jQuery를 사용하여 문자열의 길이를 체크하는 방법입니다.

HTML

<!DOCTYPE html>
<html>
<head>
    <title>String Length Check</title>
    <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
    <script>
        $(document).ready(function() {
            $("#checkLength").click(function() {
                const inputString = $("#inputString").val();
                const length = inputString.length;
                alert("문자열의 길이: " + length);
            });
        });
    </script>
</head>
<body>
    <h2>문자열 길이 체크</h2>
    <label for="inputString">문자열:</label>
    <input type="text" id="inputString" name="inputString">
    <button id="checkLength">길이 확인</button>
</body>
</html>
AI가 생성한 코드입니다. 신중하게 검토하고 사용하세요. FAQ의 자세한 정보.
이 포스트를 통해 JavaScript와 jQuery를 사용하여 날짜 유효성 검증과 문자열 길이 체크를 쉽게 구현할 수 있습니다. 추가로 궁금한 점이 있으면 언제든지 물어보세요! 😊

반응형