1.创建基本的js 正则
<script type="text/javascript" >
function check(id) {
var hh = txt;
var abc = /^/d$/gi; //这种写法比较好. 或者 var abc=new RegExp("XXXX");
if (abc.test(document.getElementById(id).value))
alert("格式正确");
else
alert('格式不正确');
}
</script>
2.限制最长输入多少字节,多了就去掉。
<script type="text/javascript" >
function CutStrLength(str,Ilength)
{
var tmp=0;
var len=0;
var okLen=0
for(var i=0;i<Ilength;i++)
{
if(str.charCodeAt(i)>255)
tmp+=2
else
len+=1
okLen+=1
if(tmp+len==Ilength)
{
return (str.substring(0,okLen));
break;
}
if(tmp+len>Ilength)
{
return (str.substring(0,okLen-1)+"");
break;
}
}
}
function checkFieldLength(fieldName,fieldDesc,fieldLength)
{
var str=document.getElementById(fieldName).value;
var theLen=0;
var teststr='';
for(i=0;i<str.length;i++)
{
teststr=str.charAt(i);
if(str.charCodeAt(i)>255)
theLen=theLen+2;
else
theLen=theLen+1;
}
document.getElementById('showMsg').innerText=theLen;
if(theLen>fieldLength)
{
document.getElementById('showMsg').innerText=fieldDesc;
//alert(fieldDesc+" 的字段长度超过规定长度!");
//document.getElementById(fieldName).focus();
document.getElementById(fieldName).value=CutStrLength(str,fieldLength);
return false;
}
else
{
return true;
}
}
</script>
3. //限制只给输入数字
<script type="text/javascript" >
function abc() {
var char = String.fromCharCode(event.keyCode)
var a = /^/d$/g;
event.returnValuechar=match(re) != null ? true : false
}
function filterInput() {
if (event.type.indexOf("key") != -1) {
var re = /37|38|39|40/g
if (event.keyCode.toString().match(re)) return false
}
event.srcElement.value = event.srcElement.value.replace(/[^0-9]/g, "")
}
function filterPaste() {
var oTR = this.document.selection.createRange()
var text = window.clipboardData.getData("text")
oTR.text = text.replace(/[^0-9]/g, "")
}
</script>
4.body 部分
<input type="text" id="txt" οnkeypress="abc" οnkeyup="filterInput()" οnchange="filterInput()" / >
<input type="button" οnclick="check('txt');" runat="server" />
<textarea id="testArea" name="testArea" rows="3" cols="22" οnkeyup="checkFieldLength('testArea', '超过允许输入的字符个数', 20);"
οnchange="checkFieldLength('testArea', '超过允许输入的字符个数', 20);"></textarea>
<div id="testInfo">
已经输入:<span id="showMsg"></span></div>