
/**//* This function is use to check the length whether current length is overflow the designated length, on control get focus or on key up
* ctrlId: target control
* return: max length
*/
function lengthCheck(ctrlId,max)...{
var oControl = ctrlId;
var oX = getAbsoluteLeft(oControl);
var oY = getAbsoluteTop(oControl);
var oCounter = document.getElementById('dCounter');
oCounter.style.display='block';

if(getBytesLength(oControl.value) > max)...{
for(var i =1; i<oControl.value.length;i++)...{
//alert(getBytesLength(oControl.value.substr(0,i)));
if(getBytesLength(oControl.value.substr(0,i+1))>=max)...{
oControl.value = oControl.value.substr(0,i);
}
}
}

if(oCounter!=null)...{
oCounter.innerHTML = getBytesLength(oControl.value)+"/"+max;
oCounter.style.left = oX-20;
oCounter.style.top = oY-20;
}
}

/**//* This function is use to check the length whether current length is overflow the designated length, on control lose focus
* ctrlId: target control
* return: max length
*/
function lengthCheckOver(ctrlId,max)...{
var oControl = ctrlId;
var oX = getAbsoluteLeft(oControl);
var oY = getAbsoluteTop(oControl);
var oCounter = document.getElementById('dCounter');

if(getBytesLength(oControl.value) > max)...{
for(var i =1; i<oControl.value.length;i++)...{
//alert(getBytesLength(oControl.value.substr(0,i)));
if(getBytesLength(oControl.value.substr(0,i+1))>=max)...{
oControl.value = oControl.value.substr(0,i);
}
}
}

if(oCounter!=null)...{
oCounter.innerHTML = getBytesLength(oControl.value)+"/"+max;
oCounter.style.left = oX-20;
oCounter.style.top = oY-20;
oCounter.style.display='none';
}
}

/**//* This function is use to get bytes length from a string which either ASCII or Uncode.
* str: appointed string
* return: bytes length
*/
function getBytesLength(str)
...{
var re=/[
本文介绍了一种用于检查输入框内文本长度是否超出指定长度的方法,并在超出时进行截断处理,同时显示剩余字符数。该方法适用于网页表单中对用户输入进行实时限制的应用场景。
469

被折叠的 条评论
为什么被折叠?



