闲着无聊写JAVA快写吐血了,哎,换换口味吧,顺手就操起了很久都没看了JavaScript。写点儿什么好呢?感觉表单验证还是实在些(错了,是非常实用,试想下你每次判断用户输入是何等的繁琐)因为JavaScript也实在是干不了什么了(是我用它干不了什么),不过还得学好它,JavaScript很好很强大,而且进入初进公司听说掌握这个挺重要的,好了,废话少说,先看程序,很简单的,大牛可以自觉关闭
/*
*通用表单验证1.0
*
*作者:renyanwei
*版本:1.0
*修改日期:2008-10-27
*/
//用于放置验证失败的控件集合
var erritem=new Array();
//验证成功消息
var sucstr="√";
//错误信息集合,如果控件没指定错误信息容器
//将统一在警告框中显示
var errmsg="";
//各就各位
function fun(form)
{
var formobj=document.getElementById(form); //得到表单对象
var iarray=formobj.getElementsByTagName("input");
for(var i=0;i<iarray.length;i++)
{
var check=iarray[i].getAttribute("check");
switch(check){
case "charcount":
erritem[i]=CharCount_fun(iarray[i]);
break;
case "numrange":
erritem[i]=NumRange_fun(iarray[i]);
break;
case "comparison":
erritem[i]=Comparison_fun(iarray[i]);
break;
case "regex":
erritem[i]=Common_fun(iarray[i]);
default:
erritem[i]=true;
break;
}
}
if(errmsg!="")
{
alert(errmsg);
errmsg="";
}
return reform();
}
/*
*验证字符范围方法
*maxsize:最大个数
*minsize:最小个数
*errmsg:验证失败的错误信息
*msgdiv:用于显示错误信息容器,如果没有则弹出警告框
*/
function CharCount_fun(inp)
{
var max=inp.getAttribute("maxsize");
var min=inp.getAttribute("minsize");
var msgdiv=document.getElementById(inp.getAttribute("msgdiv"));
var errmsg=inp.getAttribute("errmsg");
var val=inp.value.replace(/^\s+|\s+$/,"");
var leng=val.length;
if(leng<min||leng>max)
{
return showmsg(msgdiv,errmsg,false);
}else{
return showmsg(msgdiv,sucstr,true);
}
}
/*
*验证数字范围方法
*maxnum:最大值
*minnum:最小值
*errmsg:验证失败的错误信息
*msgdiv:用于显示错误信息容器,如果没有则弹出警告框
*/
function NumRange_fun(inp)
{
var max=inp.getAttribute("maxnum");
var min=inp.getAttribute("minnum");
var msgdiv=document.getElementById(inp.getAttribute("msgdiv"));
var errmsg=inp.getAttribute("errmsg");
var val=inp.value;
if(isNaN(val)||val<min||val>max)
{
return showmsg(msgdiv,errmsg,false);
}else{
return showmsg(msgdiv,sucstr,true);
}
}
/*
*比较验证方法,比较两个控件值
*to:要与之比较的控件ID
*errmsg:验证失败的错误信息
*msgdiv:用于显示错误信息容器,如果没有则弹出警告框
*/
function Comparison_fun(inp)
{
var msgdiv=document.getElementById(inp.getAttribute("msgdiv"));
var errmsg=inp.getAttribute("errmsg");
var toid=document.getElementById(inp.getAttribute("to"));
var val=inp.value;
if(val!=toid.value||val=="")
{
return showmsg(msgdiv,errmsg,false);
}else{
return showmsg(msgdiv,sucstr,true);
}
}
/*
*正则表达式验证方法
*regstr:正则表达式,无前后\\
*errmsg:验证失败的错误信息
*msgdiv:用于显示错误信息容器,如果没有则弹出警告框
*/
function Common_fun(inp)
{
var msgdiv=document.getElementById(inp.getAttribute("msgdiv"));
var reg=new RegExp(inp.getAttribute("regstr"));
var errmsg=inp.getAttribute("errmsg");
var val=inp.value;
if(!reg.test(val))
{
return showmsg(msgdiv,errmsg,false);
}else{
return showmsg(msgdiv,sucstr,true);
}
}
//显示消息方法
function showmsg(msgdiv,msg,istrue)
{
if(msgdiv==null)
{
errmsg+=msg+"\n";
}else{
msgdiv.innerHTML=msgdiv.innerHTML+"<font color='red'>"+msg+"<font>";
}
return istrue;
}
//总体验证方法,遍历所有控件是否同时通过验证
function reform()
{
for(var i=0;i<erritem.length;i++)
{
if(!erritem[i])
{
return false;
}
}
return true;
}
有兴趣的可以看下实例
---------点击查看---------
总结:这里主要是用到了HTML控件的自定义属性,重点应用了getAttribute方法,然后得到属性进行校验,哎 写个JS比写个java程序累多了,因为JavaScript实在是没什么好的调试工具,有的错误还莫名其妙,很是让人崩溃,总之不管好坏总是写出了个能运行的锥形,O(∩_∩)O哈哈~ ,挺高兴的,版本号暂定为1.0
还没解决的问题:根据校验类型自动注册onblue事件,光标进入后清除错误信息,还得靠事件驱动,这点儿确实很难为我,FF和IE还不一样,哎,不过没有真的不爽,等到2.0的时候一定得添加上去
分享到:
相关推荐
在".NET版通用网站模板 v1.0"中,JavaScript可能被用于处理用户输入、动态加载数据、表单验证、动画效果等多种功能。同时,考虑到性能和可维护性,模板可能会使用模块化管理工具,如Webpack或Gulp,来组织和优化...
《菜菜灰数据库通用留言本V1.0源码》是一款基于数据库技术的简单留言本系统,主要用于提供网站用户互动交流的功能。这个源码版本为V1.0,意味着它是该系统的初版,可能包含基本的功能和一些基础的优化。在深入探讨其...
简介:完全通过html不需要写JS验证程序就可以实现表单验证功能,可支持一个表单元件多条件验证, 同一页面多表单可同时使用,和服务端程序无关系,完全客户端方式。 Demo1 基本使用方法 Demo2 自定义错误信息显示...
PISX通用表单验证具有以下一些功能: 1、验证不允许为空的录入字段。 2、验证录入字段的有效长度,不允许小于最短字节数,也不允许超过最长字节数。 3、根据不同数据类型进行验证,验证其是否为合法的数据类型。这些...
4. **脚本文件(JavaScript或VBScript)**:用于客户端交互,实现表单验证、动态效果等功能。 5. **数据库连接文件(conn.asp)**:包含数据库连接信息,用于与数据库进行通信。 6. **数据库文件(如access.mdb或SQL...
"基于ASP的高档精致银灰色企业通用型网站源码 v1.0.zip" 提供的是一套适用于企业级应用的网站模板,其特点在于其精致的银灰色设计,以及广泛的通用性。 【ASP的基本结构与工作原理】 ASP文件通常以.asp为扩展名,...
JavaScript则用于增加动态效果,比如页面滑动、表单验证等。这个模板可能还利用了移动优化的框架,如Bootstrap,以确保在不同屏幕尺寸的手机上都能有良好的显示效果。 在文件名"132696304606903144"中,由于没有...
5. **辅助文件**:"cpc.js"可能是一个JavaScript文件,用于在前端实现某些功能,比如处理表单提交、验证用户输入等。"访问脚本之家.html"和"服务器常用软件.html"可能是提供额外信息或教程的页面,帮助用户了解相关...
3. **js**目录:包含JavaScript文件,用于增强用户体验,如表单验证、滑动效果等。 4. **images**目录:存储网站使用的图像资源,如logo、背景图、图标等。 5. **php**目录:包含PHP脚本文件,用于处理服务器端逻辑...
8. **用户体验**:为了提供良好的用户体验,网站可能还包含了错误处理、页面加载优化、表单验证、友好的用户界面设计等元素。 9. **文件名称列表**:"我的工作室"可能是一个主页面文件,包含了整个网站的入口点和...
一款灵活通用的JavaScript验证组件,支持灵活多样的验证方式。 此为2.0版本,是在1.0基础架构上做了全新的调整, 希望能通过这个JS验证器小组件为我们码农们提供微小的帮助。 1、启用创建Validator方式,不再使用...
本文实例讲述了JS实现的通用表单验证插件。分享给大家供大家参考。具体如下: 这里演示一个通用的JS表单验证插件代码。使用方法:第一步:需设定表单项数据类型,第二步:实例表单验证,验证错误提示说明(程序有...
总的来说,"基于ASP的通用型商城网站源码(带购物车) v1.0.zip"是一个典型的ASP应用实例,它展示了如何使用ASP技术构建一个包含购物车功能的电子商务平台。不过,随着技术的发展,开发者在维护和扩展这样的系统时,也...
本文将深入探讨一个基于PHP的通用预约管理系统——“预约管理系统v1.0”,并解析其核心功能和实现方式。 首先,该系统的核心在于其数据库管理部分。数据库文件名“数据库.sql”是系统的基础,包含了所有的表结构和...
2. **JavaScript**: 作为客户端的脚本语言,JavaScript用于增加交互性,比如表单验证、下拉菜单、轮播图等功能。在男科医院的网站上,这可能包括预约系统、在线咨询等互动功能。 3. **PHP文件**: 这些文件通常包含...
4. **JavaScript文件**:可能有一个.js文件,用于处理前端交互,如验证输入和显示转换结果。 5. **README或INSTALL文件**:提供关于如何安装和使用该工具的说明。 6. **许可证文件**:如果这是一个开源项目,可能会...
10. Js.asp:JavaScript文件,用于实现页面的前端交互效果,如表单验证、动态加载等。 综上所述,"站长新闻网站程序 v1.0"是一个基于ASP的简单CMS,具备新闻展示、用户互动(留言)、文章分类、投票、搜索等功能,...
HTML用于构建页面结构,CSS负责样式设计,提升用户体验,而JavaScript可能用于表单验证、动态加载数据以及与后台PHP脚本交互。 此外,考虑到性能和效率,开发者可能采用了缓存机制。对于频繁查询且不常变动的数据,...
"酷利斯特多用户留言板 v1.0"是一款基于ASP(Active Server Pages)技术的多用户交互系统,它为用户提供了一个平台,使他们能够在线进行交流和互动。这个系统的核心功能包括用户留言、管理回复、注册账户以及后台...
【PT简易留言本MVC架构 v1.0.zip】是一个基于MVC(Model-View-Controller)设计模式的简单留言本应用。MVC是一种广泛应用于Web开发中的软件设计模式,它将应用程序分为三个主要组件:模型(Model)、视图(View)和...