textarea 글자수 카운트 입니다. 정보
jQuery textarea 글자수 카운트 입니다.
본문
index.html
<!DOCTYPE html>
<html xmlns='http://www.w3.org/1999/xhtml'>
    <head>
        <title>Input Counter</title>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <link href="stylesheet.css" media="screen" rel="stylesheet" type="text/css" />
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
        <script src="application.js" type="text/javascript"></script>
    </head>
    <body>
        <div id="container">
            <form action="index.html" method="POST">
                <textarea></textarea>
                <span class="input-counter"></span>
                <input type="submit" id="input-submit" value="등록" />
            </form>
        </div>
    </body>
</html>
stylesheet.js
body {
    font-size: 12px;
    background: #FFF;
    color: #333;
    margin: 0;
}
#container {
    margin: 10px auto;
    width: 500px;
    padding: 10px;
    background: #CCC;
}
form {
    overflow: hidden;
    height: 100%;
}
textarea {
    display: block;
    width: 99%;
    height: 5.0em;
    margin-bottom: 0.5em;
}
span.input-counter {
    float: left;
    font-weight: bold;
    color: #000;
}
span.input-counter.disabled {
    color: #F00;
}
input#input-submit {
    float: right;
}
application.js
$(function() {
    var maxLength = 140;
    function updateInputCount() {
        var textLength = $('textarea').val().length;
        var count = maxLength - textLength;
        $('span.input-counter').text(count);
        if (count < 0) {
            $('span.input-counter').addClass('disabled');
            $('input#input-submit').prop('disabled', true);
        } else {
            $('span.input-counter').removeClass('disabled');
            $('input#input-submit').prop('disabled', false);
        }
    }
    $('textarea')
        .focus(updateInputCount)
        .blur(updateInputCount)
        .keypress(updateInputCount);
    window.setInterval(updateInputCount, 100);
    updateInputCount();
});
0
