一些常用的表单提交检测函数

function getlenb(tstr)
{
j=0
for (i=0;i<tstr.length;i++)
{
        if(tstr.charCodeAt(i)>255)
                j++;
        j++;

}
return j;
}


function checkint(tstr)
{
re=/[^0-9]/;
rp=tstr.search(re);
return rp;
}


function checkhz(tstr)
{
for (i=0;i<tstr.lengt;i++)
        if( tstr.charCodeAt(i)>255 )
                {
                        return 1;
                        break;
                }
//alert(String.fromCharCode(258))
return 0;

}

function checkstr(tstr)
{
//re=/[^a-zA-Z0-9_]/;
re=//W/;
rp=tstr.search(re);
return rp;

}
function checkhtml(tstr)
{
//re=/[^a-zA-Z0-9_]/;
re=/<(.*)>.*<///1>/;
rp=tstr.search(re);
return rp;

}

function checkblank(tstr)
{
//re=/[^a-zA-Z0-9_]/;
re=//s/;
rp=tstr.search(re);
return rp;

}

function checkemail(tstr)
{
re1=/([/w/-/.])+[@]{1}([/w/-])+(/.[/w/-])+/;
rp1=tstr.search(re1);

re2=/[^a-zA-Z0-9_/./-/@]/;
rp2=tstr.search(re2);
//alert(rp1)
if (rp1==-1||rp2!=-1)
        return false;       
else
        return true;
}

function checksqlstr(tstr)
{
re1=/[/^/s',/s/$]/;

rp1=tstr.search(re1);
//rp2=tstr.search(re2);
if (rp1!=-1)
        return false
else
        return true;
       
}

另一个校验,使用了正则表达式:

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>有关正则表达式 1</title>
</head>

<body>
<FORM METHOD=POST ACTION="">
有关正则表达式  <br>ƒ.只能输入数字和英文的:  
<input onkeyup="value=value.replace(/[/W]/g,'')"
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))"><br>„.只能输入数字的:  
<input onkeyup="value=value.replace(/[^/d]/g,'')"
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))"><br>….只能输入全角的:  
<input onkeyup="value=value.replace(/[^/uFF00-/uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/uFF00-/uFFFF]/g,''))"><br>†.只能输入汉字的:  
<input onkeyup="value=value.replace(/[ -~]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))"><br>
<INPUT TYPE="submit">
</FORM>

<p>&quot;^//d+$&quot;  //非负整数(正整数 + 0)<br>
&quot;^[0-9]*[1-9][0-9]*$&quot;  //正整数<br>
&quot;^((-//d+)|(0+))$&quot;  //非正整数(负整数 + 0)<br>
&quot;^-[0-9]*[1-9][0-9]*$&quot;  //负整数<br>
&quot;^-?//d+$&quot;    //整数<br>
&quot;^//d+(//.//d+)?$&quot;  //非负浮点数(正浮点数 + 0)<br>
&quot;^(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*))$&quot;  //正浮点数<br>
&quot;^((-//d+(//.//d+)?)|(0+(//.0+)?))$&quot;  //非正浮点数(负浮点数
+ 0)<br>
&quot;^(-(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*)))$&quot;  //负浮点数<br>
&quot;^(-?//d+)(//.//d+)?$&quot;  //浮点数<br>
&quot;^[A-Za-z]+$&quot;  //由26个英文字母组成的字符串<br>
&quot;^[A-Z]+$&quot;  //由26个英文字母的大写组成的字符串<br>
&quot;^[a-z]+$&quot;  //由26个英文字母的小写组成的字符串<br>
&quot;^[A-Za-z0-9]+$&quot;  //由数字和26个英文字母组成的字符串<br>
&quot;^//w+$&quot;  //由数字、26个英文字母或者下划线组成的字符串<br>
&quot;^[//w-]+(//.[//w-]+)*@[//w-]+(//.[//w-]+)+$&quot;    //email地址<br>
&quot;^[a-zA-z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S*)?$&quot;  //url</p>

</body>

</html>

 


posted on 2006-02-24 01:06  爱你一万年123  阅读(105)  评论(0编辑  收藏  举报

导航