欢迎光临
我们一直在努力

一个通用验证javascript函数

建站超值云服务器,限时71元/月

很久以前写的一个通用验证函数,大家不要笑啊,许多东西没有完善比如日期验证。
<script language="javascript" src="valid.js">
</script>

<table cellspacing=0 cellpadding=0 border=0 align=center>
<form method=post action="bbs_new.asp" name="form1" id="form1">
<tr>
    <td>姓 名:<input type="text" name="txtname" class=smallinput re=1 size=22></td>
    <td>密 码:<input type="password" name="txtpwd" class=smallinput re=1 size=22></td>
</tr>
<tr>
    <td colspan=2>主 题:<input type="text" name="txttitle" class=smallinput size=53 re=1></td>
</tr>
<tr>
    <td colspan=2>表 情:<input type=hidden name=city_streetid value=<%=request("city_streetid")%> ></td>
</tr>
<tr>
    <td colspan=2><%showexpression%></td>
</tr>
<tr>
    <td>内 容:</td>
    <td>
    <input type="button" name="butn" class=buttonface value="提交" onclick="javascript:ck();" />
      
    <input type="reset" value="清除" class=buttonface name="reset" />
    </td>
</tr>
<tr>
    <td colspan=2>
    <textarea name="txtcontent" cols="49" rows="15"></textarea>
    </td>
</tr>
</form>
</table>
//valid.js
function ck()
{
    var sign=1;
    var s;
    var l;
    for(i=0; i<document.form1.all.length; i++) {
    s=document.form1.all(i).tagname;
    l=document.form1.all(i).name;
    switch(s)
    {case input:
            if(document.form1.all(i).value==)
            {
                if (document.form1.all(i).re==1)//re表示必须
                {
                    sign=-1;
                    break;
                }
                
            }
            else
            {    
                if (l.indexof(dat)==0)//在名字前有dat表示日期
                {
                    var re=/^\d{4}-\d{1,2}-\d{1,2}$/;
                    var str=document.form1.all(i).value;
                    var r=str.match(re);
                    if (r==null)
                        {
                            sign=-2;
                            break;
                        }
                    else{
                        var s=str.split("-");
                        if (s[0].substring(0,2)<19 || s[1]>12 || s[1]<1 || s[2]>31 || s[2]<1)
                            {
                                sign=-3;
                                break;
                            }
                        }
                }
                if (l.indexof(float)==0)//在名字前有float表示浮点数
                        {
                            var re=/^\d{1,8}$|\.\d{1,2}$/;
                            var str=document.form1.all(i).value;
                            var r=str.match(re);
                            if (r==null)
                            {
                                sign=-4;
                                break;
                            }
                            else{
                            document.form1.all(i).value=parsefloat(str);
                            }
                        }
                if (l.indexof(int)==0)//在名字前有int表示整数
                        {
                            var re=/^\d{0,8}$/;
                            var str=document.form1.all(i).value;
                            var r=str.match(re);
                            if (r==null)
                            {
                            sign=-5;
                            break;
                            }
                            else{
                            document.form1.all(i).value=parseint(str);
                            }
                        }
                if (l.indexof(email)==0)//在名字前有email表示email
                        {
                            var re=/^\w+@\w+\.\w{2,3}/;
                            var str=document.form1.all(i).value;
                            var r=str.match(re);
                            if (r==null)
                            {
                            sign=-6;
                            break;
                            }
                        }
                
            }
            break;
    case select:    
                    if (document.form1.all(i).options[document.form1.all(i).selectedindex].value=="")
                    {
                        sign=-7;
                    }
            break;
    case textarea:
                    if (document.form1.all(i).value.length>32000)
                    {
                        sign=-8;
                    }
            break;
    default :
            break;    
    }
    }
    switch(sign)
    {
        case -1:
            alert(请填写所有的必填项);
            return;
            break;
        case -2:
            alert("请按以下格式填写日期: yyyy-mm-dd!");
            return;
            break;
        case -3:
            alert(请填写正确的日期);
            return;
            break;
        case -4:
            alert("请填写正确的金额 eg:12312424.23!");
            return;
            break;
        case -5:
            alert("请填写正确的数字 eg:12312!");
            return;
            break;
        case -6:
            alert("请填写合法的email eg:yourname@domain.com!");
            return;
            break;
        case -7:
            alert("请在下拉列表中选择!");
            return;
            break;
        case -8:
            alert("内容不得超过64k!");
            return;
            break;
        case 1:
            document.form1.submit();
            break;
    }
}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 一个通用验证javascript函数
分享到: 更多 (0)

相关推荐

  • 暂无文章