功能:
1.能夠實時判斷輸入的字節數
2.能夠自動裁減超過最大長度后的內容
3.對粘貼進來的內容一樣有效
4.對用鼠標拖曳進來的內容也一樣有效
5.正則表達式的應用和程序的構想
源碼:
<script>
function?checklen(obj){
var?lenE?=?obj.value.length;
var?lenC?=?0;
var?CJK?=?obj.value.match(/[\u4E00-\u9FA5\uF900-\uFA2D]/g);
if?(CJK?!=?null)?lenC?+=?CJK.length;
tno.innerText?=?obj.maxlength?-?lenC?-?lenE?;
if?(tno.innerText?<?0)?{
var?tmp?=?0
var?cut?=?obj.value.substring(0,?obj.maxlength);
for?(var?i=0;?i<cut.length;?i++){
tmp?+=?/[\u4E00-\u9FA5\uF900-\uFA2D]/.test(cut.charAt(i))???2?:?1;
if?(tmp?>?obj.maxlength)?break;
}
obj.value?=?cut.substring(0,?i);
}
}
</script>
<body?onload="tno.innerText?=?s1.maxlength;">
<textarea?name="s1"?rows="5"?cols="50"?maxlength="1000"?onpropertychange="checklen(this)"></textarea>
剩余<span?id="tno"></span>個字符
1.能夠實時判斷輸入的字節數
2.能夠自動裁減超過最大長度后的內容
3.對粘貼進來的內容一樣有效
4.對用鼠標拖曳進來的內容也一樣有效
5.正則表達式的應用和程序的構想
源碼:
<script>
function?checklen(obj){
var?lenE?=?obj.value.length;
var?lenC?=?0;
var?CJK?=?obj.value.match(/[\u4E00-\u9FA5\uF900-\uFA2D]/g);
if?(CJK?!=?null)?lenC?+=?CJK.length;
tno.innerText?=?obj.maxlength?-?lenC?-?lenE?;
if?(tno.innerText?<?0)?{
var?tmp?=?0
var?cut?=?obj.value.substring(0,?obj.maxlength);
for?(var?i=0;?i<cut.length;?i++){
tmp?+=?/[\u4E00-\u9FA5\uF900-\uFA2D]/.test(cut.charAt(i))???2?:?1;
if?(tmp?>?obj.maxlength)?break;
}
obj.value?=?cut.substring(0,?i);
}
}
</script>
<body?onload="tno.innerText?=?s1.maxlength;">
<textarea?name="s1"?rows="5"?cols="50"?maxlength="1000"?onpropertychange="checklen(this)"></textarea>
剩余<span?id="tno"></span>個字符