计算文本框允许输入字符的百分比

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>计算文本框允许输入字符的百分比</TITLE>
</HEAD>

<BODY>
<style type="text/css">

.progress{
    width: 1px;
    height: 14px;
    color: white;
    font-size: 12px;
    overflow: hidden;
    background-color: navy;
    padding-left: 5px;
}

</style>

<script type="text/JavaScript">
function textCounter(field,counter,maxlimit,linecounter) {
    var fieldWidth =  parseInt(field.offsetWidth);
    var charcnt = field.value.length;        

    // trim the extra text
    if (charcnt > maxlimit) { 
        field.value = field.value.substring(0, maxlimit);
    }

    else { 
    // progress bar percentage
    var percentage = parseInt(100 - (( maxlimit - charcnt) * 100)/maxlimit) ;
    document.getElementById(counter).style.width =  parseInt((fieldWidth*percentage)/100)+"px";
    document.getElementById(counter).innerHTML="已输: "+percentage+"%"
    // color correction on style from CCFFF -> CC0000
    setcolor(document.getElementById(counter),percentage,"background-color");
    }
}

function setcolor(obj,percentage,prop){
obj.style[prop] = "rgb(80%,"+(100-percentage)+"%,"+(100-percentage)+"%)";
}
</script>
<p>限制:120字节</P>
<form>
<textarea rows="5" cols="40" name="maxcharfield" id="maxcharfield" 
onKeyDown="textCounter(this,'progressbar1',120)" 
onKeyUp="textCounter(this,'progressbar1',120)" 
onFocus="textCounter(this,'progressbar1',120)" ></textarea><br />
<div id="progressbar1" class="progress"></div>
<script>textCounter(document.getElementById("maxcharfield"),"progressbar1",120)</script>
</form>
</BODY>
</HTML>
原文地址:https://www.cnblogs.com/jack-Star/p/3459709.html