当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript实例教程(8) 检验表单有效性

Javascript
jquery 操作单选框,复选框,下拉列表实现代码
js 数组实现一个类似ruby的迭代器
JavaScript 组件之旅(一)分析和设计
JavaScript 组件之旅(二)编码实现和算法
JavaScript 组件之旅(三):用 Ant 构建组件
JavaScript 组件之旅(四):测试 JavaScript 组件
小议javascript 设计模式 推荐
浅谈javascript 面向对象编程
javascript 时间比较实现代码
js apply/call/caller/callee/bind使用方法与区别分析
JavaScript 全角转半角部分
jquery 选择器部分整理
Firebug 字幕文件JSON地址获取代码
jQuery 判断元素上是否绑定了事件
javascript实现的距离现在多长时间后的一个格式化的日期
javascript 面向对象,实现namespace,class,继承,重载
javascript 通过封装div方式弹出div窗体
JScript 脚本实现文件下载 一般用于下载木马
JavaScript 工具库 Cloudgamer JavaScript Library v0.1 发布
网页禁用右键实现代码(JavaScript代码)

Javascript 中的 javascript实例教程(8) 检验表单有效性


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-04   浏览: 72 ::
收藏到网摘: n/a

    表单的有效性检验是JavaScript一个很有用的方面。它可以用于检查一个给定的表单以及发现表单中的任何问题,比如一个空白的输入框或者一个无效的E-mail(电子邮件)地址,然后它可以通知用户并且就不会将这些错误的表单传给服务器以节省时间。另外,除此以外,对表单标签的一些修改跟其它类型的脚本是类似的。以下的例子是一个简单的表单,如下面表单所示。你可以让名字的方框留空白或者输入一个电子邮件地址而没有@符号,即是输入错误的内容,看看JavaScript是进行表单的有效性检验的。
姓名:
电子邮箱:

  结果你可以发现如果你忘记输入某一特定类型的数据到表单中去,它就会警告你并且取消提交给服务器。直到你键入了正确的信息,它才将表单发送给服务器。

  下面我们来好好研究一下在Javascript中是如何进行表单的有效性检验的。其中在表单有效性检验中最重要的代码是在表单标签处的一个时间处理器,这个时间处理器(onSubmit)必须返回真值的时候才提交表单。以下是详细的表单代码:

<FORM

NAME = "theform"

ACTION = "mailto:"

METHOD = "POST"

ENCTYPE = "multipart/form-data"

onSubmit="return formCheck()">

当Submit(提交)按钮被按下的时候,这个时间处理器就被触发,它接着执行函数formCheck(),这个函数是用于检查表单中是否没有错误了。
formCheck()函数的代码如下:


function formCheck()

{


if (document.theform.user_name.value == "")

{

alert("Please put in a name.");

return false;

}

if (document.theform.email.value.indexOf("@") == -1 ||

document.theform.email.value == "")

{

alert("Please include a proper email address.");

return false;

}

}

  首先,formCheck()函数判断是否用户名字输入为空。如果为空,它也会警告用户并返回false值,这个表单也不会发送给服务器。接着formCheck()函数是判断是否Email地址输入包含一个@符号或者是空的。如果没有包含@符号或者是空的的任何一种情况,它就会警告用户并返回false值,这样这个表单就不会发送给服务器了。以上的任何一种错误都不会将表单发送给服务器的,直到正确填写完整个表单之后才将表单发送给服务器。

  以上程序的原理实质是获得表单中各元素的值“value”,然后加上是否等于“==”某些设定的内容,或者说本身固有的内容(比如EMAIL的@)。

  按此你可以加以扩充它的功能,比如完善Email的检验功能,加上判断“@”后的邮件服务器的地址和一点“.”。如下图:



  也可以增加对发信内容进行校验。增加的代码是获得发信内容文本框的值:
document.theform.发信内容的文本框名.value == ""

点击此处去测试效果页,并获得源代码。