[置顶] 7 Javascript:表单与验证-非空验证

时间:2021-08-04 09:10:21

表单提交前要检查数据的合法性

在要对表单里的数据进行验证的时候,可以利用getElementById()来访问网页上任何一个元素
每个表单域都有一个form对象,可被传给任何验证表单数据的函数

<input id="zipcode" name="zipcode" type="text" size="5" onclick="showIt(this.form)"/>
function showIt(thisForm)
{
alert(thisForm["zipcode"].value);
//通过form对象的name属性,取得元素的值
}

利用name属性或getElementById()方法都可以完成对元素的获取

检查表单数据的时机,取决于选择正确的用户输入事件去处理。

也就是说,当用户输入数据后立即对数据验证。
用户在输入数据时的顺序是:

  1. 选择输入域
  2. 在域里输入数据
  3. 离开该域,移往下个目标
  4. 选择下个目标域
  5. 在域里输入数据

在这个过程中,会激发一系列的事件,利用这些事件,可以找到对数据验证的时机
1) 选中输入域时 –激发onfocus事件(焦点)
2) 离开输入域时 –激发onblur事件(离开焦点)
3) 离开该域并且输入内容发生改变时 –激发onchange事件
最正确的选择是在激发onblur事件时去对数据进行验证

验证的第一步:检查域不为空

<input id="phone" name="phone" type="text" size="12" onblur="validateNonEmpty(this)"/>

调用validateNonEmpty来响应onblur事件
表单对象使用关键字this被传至函数
以下是验证函数

function validateNonEmpty(inputField)
{

if(inputField.value.length==0)
{
alert("Please enter a value.");
return false;
}
return true;
}

在网页表单进行提交的时候,一定要对用户输入的数据进行验证
在要对表单里的数据进行验证的时候,可以利用getElementById()来访问网页上任何一个元素