具有多个限制的字符数

时间:2011-01-12 06:42:27

标签: javascript for-loop character counter

我是javascript的新手,我正在尝试编写一个脚本来确定boxarea的字符数,然后将计数长度与字符限制数组进行比较。如果boxarea计数超过给定限制,则数组元素具有不同的类切换。

如果我感到困惑,也许这个(非常糟糕的:*)脚本会有所帮助:

$(document).ready(function(){   
    limit1.count = 10;
    limit2.count = 15;
    limit3.count = 20;


    function getCount (textarea) {
        var i=0;
        for (i=0;i<=5;i++)
        {
        if(textarea.value.length > limit[i].count) {
            $(limit[i].toggleClass("unavailable");
        }
        }
        }
}); 

1 个答案:

答案 0 :(得分:1)

这应该是你的风格:

<style type="text/css">
.box {width: 100px; height: 100px; display: block; margin: 10px; float: left;
    background-color: green;}
.unavailable {background-color: red;}
</style>

HTML:

<div><textarea name="textarea" id="textarea" cols="45" rows="5"></textarea></div>

<div id="box1" class="box">Box 1</div>
<div id="box2" class="box">Box 2</div>
<div id="box3" class="box">Box 3</div>

和javascript:

<script type='text/javascript' src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js" ></script>
<script type='text/javascript'>  
    function validate()
    {
        var validation = { 
            '#box1': 10, 
            '#box2': 15,
            '#box3': 20
        }; 

        $.each(validation, function(elem, max) { 
            $(elem).removeClass("unavailable");
            if($('#textarea').val().length > max)
                $(elem).addClass("unavailable");
        });
    }

    $(document).ready(function(){   
        $('#textarea').keydown(validate);
        validate();
    });
</script>