js表单输入判断

简介:
//函数名:chksafe
//功能介绍:检查是否含有"'",'\\',"/"
//参数说明:要检查的字符串
//返回值:0:是 1:不是
function chksafe(a)

 return 1;
/* fibdn = new Array ("'" ,"\\", "、", ",", ";", "/");
 i=fibdn.length;
 j=a.length;
 for (ii=0;ii<i;ii++)
 { for (jj=0;jj<j;jj++)
 { temp1=a.charAt(jj);
 temp2=fibdn[ii];
 if (temp1==temp2)
 { return 0; }
 }
 }
 return 1;
*/ 
}

//函数名:chkspc
//功能介绍:检查是否含有空格
//参数说明:要检查的字符串
//返回值:0:是 1:不是
function chkspc(a)
{
 var i=a.length;
 var j = 0;
 var k = 0;
 while (k<i)
 {
 if (a.charAt(k) != " ")
 j = j+1;
 k = k+1;
 }
 if (j==0)
 {
 return 0;
 }
 
 if (i!=j)
 { return 2; }
 else
 {
 return 1;
 }
}

//函数名:chkemail
//功能介绍:检查是否为Email Address
//参数说明:要检查的字符串
//返回值:0:不是 1:是 
function chkemail(a)
{ var i=a.length;
 var temp = a.indexOf('@');
 var tempd = a.indexOf('.');
 if (temp > 1) {
 if ((i-temp) > 3){
 
 if ((i-tempd)>0){
 return 1;
 }
 
 }
 }
 return 0;
}//opt1 小数 opt2 负数
//当opt2为1时检查num是否是负数
//当opt1为1时检查num是否是小数
//返回1是正确的,0是错误的
function chknbr(num,opt1,opt2)
{
 var i=num.length;
 var staus;
//staus用于记录.的个数
 status=0;
 if ((opt2!=1) && (num.charAt(0)=='-'))
 {
 //alert("You have enter a invalid number.");
 return 0;
 
 }
//当最后一位为.时出错
 if (num.charAt(i-1)=='.')
 {
 //alert("You have enter a invalid number.");
 return 0;
 }

 for (j=0;j<i;j++)
 {
 if (num.charAt(j)=='.')
 {
 status++;
 }
 if (status>1) 
 {
 //alert("You have enter a invalid number.");
 return 0; 
 }
 if (num.charAt(j)<'0' || num.charAt(j)>'9' )
 {
 if (((opt1==0) || (num.charAt(j)!='.')) && (j!=0)) 
 {
 //alert("You have enter a invalid number.");
 return 0;
 }
 }
 }
 return 1;
}
//函数名:chkdate
//功能介绍:检查是否为日期
//参数说明:要检查的字符串
//返回值:0:不是日期 1:是日期
function chkdate(datestr)
{
 var lthdatestr
 if (datestr != "")
 lthdatestr= datestr.length ;
 else
 lthdatestr=0;
 
 var tmpy="";
 var tmpm="";
 var tmpd="";
 //var datestr;
 var status;
 status=0;
 if ( lthdatestr== 0)
 return 0

 for (i=0;i<lthdatestr;i++)
 { if (datestr.charAt(i)== '-')
 {
 status++;
 }
 if (status>2)
 {
 //alert("Invalid format of date!");
 return 0;
 }
 if ((status==0) && (datestr.charAt(i)!='-'))
 {
 tmpy=tmpy+datestr.charAt(i)
 }
 if ((status==1) && (datestr.charAt(i)!='-'))
 {
 tmpm=tmpm+datestr.charAt(i)
 }
 if ((status==2) && (datestr.charAt(i)!='-'))
 {
 tmpd=tmpd+datestr.charAt(i)
 }

 }
 year=new String (tmpy);
 month=new String (tmpm);
 day=new String (tmpd)
 //tempdate= new String (year+month+day);
 //alert(tempdate);
 if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
 {
 //alert("Invalid format of date!");
 return 0;
 }
 if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
 {
 //alert ("Invalid month or day!");
 return 0;
 }
 if (!((year % 4)==0) && (month==2) && (day==29))
 {
 //alert ("This is not a leap year!");
 return 0;
 }
 if ((month<=7) && ((month % 2)==0) && (day>=31))
 {
 //alert ("This month is a small month!");
 return 0;
 
 }
 if ((month>=8) && ((month % 2)==1) && (day>=31))
 {
 //alert ("This month is a small month!");
 return 0;
 }
 if ((month==2) && (day==30))
 {
 //alert("The Febryary never has this day!");
 return 0;
 }
 
 return 1;
}
//函数名:fucPWDchk
//功能介绍:检查是否含有非数字或字母
//参数说明:要检查的字符串
//返回值:0:含有 1:全部为数字或字母 
function fucPWDchk(str)
{
 var strSource ="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
 var ch;
 var i;
 var temp;
 
 for (i=0;i<=(str.length-1);i++)
 {
 
 ch = str.charAt(i);
 temp = strSource.indexOf(ch);
 if (temp==-1) 
 {
 return 0;
 }
 }
 if (strSource.indexOf(ch)==-1)
 {
 return 0;
 }
 else
 {
 return 1;
 } 
}

function jtrim(str)
{ while (str.charAt(0)==" ")
 {str=str.substr(1);} 
 while (str.charAt(str.length-1)==" ")
 {str=str.substr(0,str.length-1);}
 return(str);
}

//函数名:fucCheckNUM
//功能介绍:检查是否为数字
//参数说明:要检查的数字
//返回值:1为是数字,0为不是数字
function fucCheckNUM(NUM)
{
 var i,j,strTemp;
 strTemp="0123456789";
 if ( NUM.length== 0)
 return 0
 for (i=0;i<NUM.length;i++)
 {
 j=strTemp.indexOf(NUM.charAt(i)); 
 if (j==-1)
 {
 //说明有字符不是数字
 return 0;
 }
 }
 //说明是数字
 return 1;
}
//函数名:fucCheckTEL
//功能介绍:检查是否为电话号码
//参数说明:要检查的字符串
//返回值:1为是合法,0为不合法
function fucCheckTEL(TEL)
{
 var i,j,strTemp;
 strTemp="0123456789-()# ";
 for (i=0;i<TEL.length;i++)
 {
 j=strTemp.indexOf(TEL.charAt(i)); 
 if (j==-1)
 {
 //说明有字符不合法
 return 0;
 }
 }
 //说明合法
 return 1;
}
//函数名:fucCheckLength
//功能介绍:检查字符串的长度
//参数说明:要检查的字符串
//返回值:长度值
function fucCheckLength(strTemp)
{
 var i,sum;
 sum=0;
 for(i=0;i<strTemp.length;i++)
 {
 if ((strTemp.charCodeAt(i)>=0) && (strTemp.charCodeAt(i)<=255))
 sum=sum+1;
 else
 sum=sum+2;
 }
 return sum;
}
分类:  Javascript

本文转自快乐就好博客园博客,原文链接:http://www.cnblogs.com/happyday56/archive/2007/11/29/976412.html,如需转载请自行联系原作者
相关文章
|
5月前
|
JavaScript 前端开发
JavaScript如何遍历表单元素?
JavaScript如何遍历表单元素?
|
11天前
|
移动开发 JavaScript 前端开发
js之操作表单 | 12-4
js之操作表单 | 12-4
|
19天前
|
移动开发 前端开发 JavaScript
JavaScript 表单
JavaScript 表单
24 9
|
23天前
|
人工智能 前端开发 JavaScript
react js 处理表单( form )的2个例子
react js 处理表单( form )的2个例子
|
2月前
|
大数据 数据处理 分布式计算
JSF 逆袭大数据江湖!看前端框架如何挑战数据处理极限?揭秘这场技术与勇气的较量!
【8月更文挑战第31天】在信息爆炸时代,大数据已成为企业和政府决策的关键。JavaServer Faces(JSF)作为标准的 Java Web 框架,如何与大数据技术结合,高效处理大规模数据集?本文探讨大数据的挑战与机遇,介绍 JSF 与 Hadoop、Apache Spark 等技术的融合,展示其实现高效数据存储和处理的潜力,并提供示例代码,助您构建强大的大数据系统。
33 0
|
2月前
|
Devops 持续交付 测试技术
JSF遇上DevOps:开发流程将迎巨变?一篇文章带你领略高效协同的魅力!
【8月更文挑战第31天】本文探讨了如何在JavaServer Faces(JSF)开发中融入DevOps文化,通过持续集成与部署、自动化测试、监控与日志记录及反馈机制,提升软件交付速度与质量。文中详细介绍了使用Jenkins进行自动化部署、JUnit与Selenium进行自动化测试、ELK Stack进行日志监控的具体方法,并强调了持续改进的重要性。
31 0
|
2月前
|
前端开发 微服务 API
微服务浪潮下的JSF革新:如何在分散式架构中构建统一而强大的Web界面
【8月更文挑战第31天】随着微服务架构的兴起,企业将应用拆分成小型、独立的服务以提高系统可维护性和可扩展性。本文探讨如何在微服务架构下构建和部署JavaServer Faces (JSF) 应用,通过RESTful服务实现前后端分离,提升灵活性和适应性。
46 0
|
2月前
|
JavaScript 前端开发 数据安全/隐私保护
Vue.js 表单处理技巧大揭秘!v-model 与自定义验证综合运用,打造高效表单处理体验!
【8月更文挑战第31天】Vue.js 是一款备受欢迎的前端框架,其表单处理功能强大且灵活。v-model 指令可实现双向数据绑定,简化表单元素值与 Vue 实例数据的同步过程;结合自定义验证规则,则能确保用户输入数据符合特定要求。无论是简单的单字段校验还是复杂的多字段验证,Vue.js 均提供了简洁有效的解决方案,有效提升了表单处理效率及用户体验。通过综合运用 v-model 和自定义验证,开发者能够实时反馈错误信息并控制表单状态,从而增强应用的交互性与可靠性。
31 0
|
2月前
|
JavaScript 安全 数据安全/隐私保护
深入Node.js与Express:从表单接收到数据验证的完整指南——实战技巧揭秘后端开发中的表单处理流程
【8月更文挑战第31天】在Web开发中,处理表单数据至关重要。本文通过实例详细讲解了如何利用Node.js与Express框架接收和验证表单数据。首先,搭建环境并初始化一个简单的Express应用;接着,演示如何接收用户注册表单中的`username`和`email`字段;最后,引入`joi`模块进行数据验证,确保数据安全准确。掌握这些技能有助于开发者构建更安全、友好的Web应用。随着Node.js和Express的不断进步,未来将有更多高级功能值得期待。
41 0
|
2月前
|
JavaScript 前端开发
Next js:点击登录显示登录表单,点击注册显示注册表单的功能
本文提供了一个Next.js中使用React状态管理实现点击按钮切换显示登录和注册表单的功能示例,包括创建`authform.tsx`组件和在页面组件中引入使用的方法。