js限制⽂本框输⼊长度两种限制⽅式(长度、字节数):
1.实时显⽰可输⼊的字数(字节数)
2.两种限制⽅式(长度、字节数)
3.中⽂输⼊法下可正常使⽤,⽆BUG
4.同⼀页⾯可以使⽤多个,相互不⼲扰
复制代码代码如下:
function limit(){
var txtNote;//⽂本框
var txtLimit;//提⽰字数的input
var limitCount;//限制的字数
var isbyte;//是否使⽤字节长度限制(1汉字=2字符)
var txtlength;//到达限制时,字符串的长度
var txtByte;
this.init=function(){
Note;
Limit;
limitCount=this.limitCount;
isbyte=this.isbyte;
txtLimit.value=limitCount;
}
function wordsLimit(){
var noteCount=0;
if(isbyte){noteCount=place(/[^/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=place(/[^/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=place(/[^/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.limitCount=20;
lim.isbyte=true;
lim.init();
// --></mce:script>
</html>
⽂本框限制字符长度
复制代码代码如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="place(/[^0-9- ]/g,'');" maxLength=11 >
上⾯这样写只能限制输⼊的⼀定是数字和最⼤长度为11个字符如何限制⼀定要输⼊11位不能少也不能多
------解决⽅案--------------------------------------------------------
你确定上⾯的写法对吗。。。测试怎么通不过呢。。
不对吗测试那⾥不对这个现在只是限制输⼊⼀定是数字和11个字符
------解决⽅案--------------------------------------------------------
复制代码代码如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="place(/[^0-9- ]/g,'');" maxLength=11 >
上⾯这样写只能限制输⼊的⼀定是数字和最⼤长度为11个字符如何限制⼀定要输⼊11位不能少也不能多
------解决⽅案--------------------------------------------------------
html内容文本框复制代码代码如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="place(/[^0-9- ]/g,'');" maxLength=11 >
上⾯这样写只能限制输⼊的⼀定是数字和最⼤长度为11个字符如何限制……
------解决⽅案--------------------------------------------------------
复制代码代码如下:
if(bile.value=="")
{
alert("您输⼊错误");
bile.focus();
return false;
}
else
{
if(!/^\d{11}$.test(bile.value))
{alert("您输⼊数字的位数不对");
bile.focus();
return false;
}
}
不知道这样⾏不⾏。。。
------解决⽅案--------------------------------------------------------
HTML code
复制代码代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>控制textarea的字符个数</title>
<style>
<!--
form{
padding:0px;
margin:0px;
font:14px Arial;
}
<{ /* ⽂本框单独设置 */
border: 1px inset #00008B;
background-color: #ADD8E6;
}
input.btn{ /* 按钮单独设置 */
color: #00008B;
background-color: #ADD8E6;
border: 1px outset #00008B;
padding: 1px 2px 1px 2px;
}
-->
</style>
<script language="javascript">
function LessThan(oTextArea){
//返回⽂本框字符个数是否符号要求的boolean值
return oTextArea.value.length < Attribute("maxlength");
}
</script>
</head>
<body>
<form method="post" name="myForm1" action="addInfo.aspx">
<p><label for="name">请输⼊您的姓名:</label>
<input type="text" name="name" id="name" class="txt" value="姓名" maxlength="10"></p>
<p><label for="comments">我要留⾔:</label><br>
<textarea name="comments" id="comments" cols="40" rows="4" maxlength="50" onkeypress="return LessThan(this);">
</textarea></p>
<p><input type="submit" name="btnSubmit" id="btnSubmit" value="Submit" class="btn">
<input type="reset" name="btnReset" id="btnReset" value="Reset" class="btn"></p>
</form>
</body>
</html>
------解决⽅案--------------------------------------------------------
HTML code
复制代码代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "/TR/html4/loose.dtd">
<html>
<head>
<title>电话号码检测 </title>
<meta name="Generator" content="EditPlus">
<meta name="Author" content="Dsmart">
<meta name="Keywords" content="">
<meta name="Description" content="">
</head>
<body>
电话号码:<input id ="phone" type="value" onblur="checkPhone()"/>
<script type="text/javascript">
function checkPhone(){
var phone = ElementById("phone").value;
if(phone == ""){
alert("请输⼊号码");
}else if(!(/^\d{11}$/g.test(phone))){//限制输⼊11整数
//}else if(!(/^13\d{9}$/g.test(phone)||(/^15[0-35-9]\d{8}$/g.test(phone))|| (/^18[05-9]\d{8}$/g.test(phone)))){
//⽤于检测⽤户输⼊的⼿机号码是否正确验证13系列和150-159(154除外)、180、185、186、187、188、189⼏种号码,长度11位
alert("请输⼊11整数");
}else{
alert("ok");
}
}
</script>
</body>
</html>
------解决⽅案--------------------------------------------------------
复制代码代码如下:
<INPUT onkeydown=if(event.keyCode==13)event.keyCode=9 onkeyup="place(/[^0-9- ]/g,'');" maxLength=11 >
上⾯这样写只能限制输⼊的⼀定是数字和最⼤长度为11个字符如何限制……
这样是可以有个提⽰,但并没起到限制作⽤,,当输⼊少于11位还是可以提交的,这个是不是要⽤js来控制的呢
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论