﻿String.prototype.Trim = function() {
    var m = this.match(/^\s*(\S+(\s+\S+)*)\s*$/);
    return (m == null) ? "" : m[1];
}

String.prototype.getLength = function () {
    var len=0;
    for (var i = 0; i < this.length; i++) {
        if (this.charCodeAt(i) >= 0x4e00 && this.charCodeAt(i) <= 0x9fa5) {
            len += 2;
        }
         else {
            len++;
        }
    }
    return len;
}

function RestrictLength(eve, maxlength) {
    
    var text=$(eve).val().Trim();
    var l=text.getLength();
    var len_num=text.match(/[^\x00-\xff]/ig);
    var len=len_num==null?0:len_num.length;
    if(l>maxlength)
    {  
        if(len<(maxlength/2))
            $(eve).val(text.substring(0,maxlength-len));
        else
            $(eve).val(text.substring(0,(maxlength/2)));
     }
}

function LengthLimit(event) {
    
    var maxlength=$(this).attr("maxlength")||(event.data==null?10:event.data.Length);
    var text=$(this).val().Trim();
    var l=text.getLength();
    var len_num=text.match(/[^\x00-\xff]/ig);
    var len=len_num==null?0:len_num.length; 
    if(l>maxlength)
    {  
        if(len<(maxlength/2))
            $(this).val(text.substring(0,maxlength-len));
        else
            $(this).val(text.substring(0,(maxlength/2)));
     }
}
