7.2 Javascript:表单验证-提交表单

坏数据不该抵达服务器:提交表单时的验证

表单域对象里有个form特性,它使用数组表示了整份表单的域
假如这里只有一个简单的信息文本框和一个邮政编码框,还有一个提交按钮

<form>
<input id="message" name="message" type="text" size="12" onBlur="validate_Length(1,32,this,document.getElementById('message_help'));" />
<message_help" class="help"></span>
<input id="ZipCode" name="phone" type="text" size="5" onBlur="validate_ZipCode(this,document.getElementById('ZipCode_help'));" />
<span id="ZipCode_help" class="help"></span>
<input type="button" value="Order Banner" onClick="placeOrder(this.form);"/>
</form>
<script language="javascript" type="text/javascript">
//文本长度验证
function validate_Length(minLegth,maxlength,inputFiled,helpText)
{
    if(inputFiled.value.length<minLegth||inputFiled.value.length>maxlength)
    {
        if(helpText!=null)
        {
            helpText.innerHTML="请输入长度为"+minLenght+"到"+maxLength+"的文本";
            return false;

            }
    }
    else if(helpText!=null)
    {
        helpText.innerHTML=""
        return true;
        }

    }
//邮政编码验证
function validate_ZipCode(inputFiled,helpText)
{
    if(inputFiled.value.length!=5)
    {
        if(helpText!=null)
            helpText.innerHTML="邮政编码长度必须为5位";
        return false;
    }
    else if(isNaN(inputFiled.value))
    {
        if(helpText!=null)
            helpText.innerHTML="邮政编码必须为数字";
        return false;
        }
    else if(helpText!=null)
    {
        helpText.innerHTML=""
        return true;
        }

    }

function placeOrder(form)
{
    if(validateNonEmpty(1,32,form["phone"],form["phone_help"])&&validate_ZipCode(form["ZipCode"],form["ZipCode_help"]))
    {
        form.submit();
        }
    else{
        alert("您填写的表单数据至少有一项不合法");
        }
    }
</script>

总结:只需要调用相应的验证函数,得到返回值,便可在最后提交表单的时候完成最后的数据过滤
在实际应用中,往往需要对数据的长度,非空,非法字符,格式,大小定等等做验证,这里不一一介绍,重在领会。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值