国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

js限制文本框輸入長度兩種限制方式(長度、字節數)

2024-05-06 14:20:27
字體:
來源:轉載
供稿:網友
功能/特點:
1.實時顯示可輸入的字數(字節數)
2.兩種限制方式(長度、字節數)
3.中文輸入法下可正常使用,無BUG
4.同一頁面可以使用多個,相互不干擾
limit.js
代碼如下:
function limit(){
var txtNote;//文本框
var txtLimit;//提示字數的input
var limitCount;//限制的字數
var isbyte;//是否使用字節長度限制(1漢字=2字符)
var txtlength;//到達限制時,字符串的長度
var txtByte;
this.init=function(){
txtNote=this.txtNote;
txtLimit=this.txtLimit;
limitCount=this.limitCount;
isbyte=this.isbyte;
txtNote.onkeydown=function(){wordsLimit()};txtNote.onkeyup=function(){wordsLimit()};
txtLimit.value=limitCount;
}
function wordsLimit(){
var noteCount=0;
if(isbyte){noteCount=txtNote.value.replace(/[^/x00-/xff]/g,"xx").length}else{noteCount=txtNote.value.length}
if(noteCount>limitCount){
if(isbyte){
txtNote.value=txtNote.value.substring(0,txtlength+Math.floor((limitCount-txtByte)/2));
txtByte=txtNote.value.replace(/[^/x00-/xff]/g,"xx").length;
txtLimit.value=limitCount-txtByte;
}else{
txtNote.value=txtNote.value.substring(0,limitCount);
txtLimit.value=0;
}
}else{
txtLimit.value=limitCount-noteCount;
}
txtlength=txtNote.value.length;//記錄每次輸入后的長度
txtByte=txtNote.value.replace(/[^/x00-/xff]/g,"xx").length;
}
}

頁面調用:
代碼如下:
<html>
<body>
<input id="txtNote" />
還可輸入<input type="text" id="txtCount" />個字符
</body>
<mce:script type="text/javascript"><!--
var lim=new limit();
lim.txtNote=document.getElementById("txtNote");
lim.txtLimit=document.getElementById("txtCount");
lim.limitCount=20;
lim.isbyte=true;
lim.init();
// --></mce:script>
</html>


文本框限制字符長度
代碼如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="value=value.replace(/[^0-9- ]/g,'');" maxLength=11 >

上面這樣寫只能限制輸入的一定是數字 和最大長度為11個字符 如何限制一定要輸入11位 不能少也不能多
------解決方案--------------------------------------------------------
你確定上面的寫法對嗎。。。測試怎么通不過呢。。
不對嗎 測試那里不對 這個現在只是限制輸入一定是數字和11個字符
------解決方案--------------------------------------------------------
代碼如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="value=value.replace(/[^0-9- ]/g,'');" maxLength=11 >

上面這樣寫只能限制輸入的一定是數字 和最大長度為11個字符 如何限制一定要輸入11位 不能少也不能多
------解決方案--------------------------------------------------------
代碼如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="value=value.replace(/[^0-9- ]/g,'');" maxLength=11 >
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 盖州市| 阿克| 深州市| 永和县| 锡林郭勒盟| 禄劝| 斗六市| 闽清县| 广德县| 四子王旗| 南开区| 九寨沟县| 东乌| 固原市| 祁东县| 灌南县| 禄劝| 新田县| 海城市| 延吉市| 尼木县| 开原市| 上蔡县| 光山县| 台山市| 修武县| 滦南县| 建湖县| 桓台县| 右玉县| 黔西县| 高碑店市| 平泉县| 平江县| 天水市| 香河县| 永登县| 遂昌县| 海城市| 萍乡市| 永胜县|