日期:2014-05-18  浏览次数:20814 次

一个script 程序的改进
<script   type= "text/javascript ">
        function   fucCheckLength(strTemp)
          {
          var   i,sum;
          sum=0;
          for(i=0;i <strTemp.length;i++)
          {
            if   ((strTemp.charCodeAt(i)> =0)   &&   (strTemp.charCodeAt(i) <=255))
                  sum=sum+1;
            else
                  sum=sum+2;
          }
            return   sum;
            }
           
        function   ShowLeft(){
          var   LenString,LenStringI,Strings;
            LenString=fucCheckLength(document.getElementById( "ttaSPYINTRODUCT ").value);
            LenStringI=LenString;
          if   (LenString> 200){
                alert( "输入的字符长度已经超过规定的字数! ");
                Strings=document.getElementById( "ttaSPYINTRODUCT ").value;
        while(LenStringI> 200){
              if   ((Strings.charCodeAt(Strings.length)> =0)   &&  
                    (Strings.charCodeAt(Strings.length) <=255))
                    {
                        LenStringI=LenStringI-1;
              }
          else{
                        LenStringI=LenStringI-2;
          }
          Strings=Strings.substring(0,(Strings.length-1));
        }
    document.getElementById( "ttaSPYINTRODUCT ").value=Strings;
    return   false;
  }
//   document.getElementById( "Button1 ").value=200-LenString;
}
</script>

这个程序是写死的,而且只能对ttaSPYINTRODUCT这个taxtarea进行内容的控制,但是如果页面里面有好几个需要进行内容的控制,如果改写成
Showlef(ttaSPYINTRODUCT,200)这样子传递两个参数就可以用的

------解决方案--------------------
<script type= "text/javascript ">
function fucCheckLength(strTemp)
{
var i,sum;
sum=0;
for(i=0;i <strTemp.length;i++)
{
if ((strTemp.charCodeAt(i)> =0) && (strTemp.charCodeAt(i) <=255))
sum=sum+1;
else
sum=sum+2;
}
return sum;
}

function ShowLeft(Id,strLen){
var LenString,LenStringI,Strings;
LenString=fucCheckLength(document.getElementById(Id).value);
LenStringI=LenString;
if (LenString> strLen){
alert( "输入的字符长度已经超过规定的字数! &qu