JS 判断代码全收集


Posted in Javascript onApril 28, 2009

/*$#################################################$*/
/* 程序功能:输入验证 */
/* 函数名称: */
/* function CheckData(valname,val,valimode,limitlen) */
/* 功能说明:验证字符串数据 */
/* function CheckUserName(val,min,max) */
/* 功能说明:验证用户名 */
/* function CheckPassWord(val,min,max) */
/* 功能说明:验证密码 */
/* function IsSame(val1,val2) */
/* 验证密码匹配 */
/* function CheckEmail(val,mode) */
/* 功能说明:验证Email */
/* function CheckValHeight(val,min,max,mode) */
/* 功能说明:验证用户身高 */
/* function CheckValWeight(val,min,max,mode) */
/* 功能说明:验证用户体重 */
/* function CheckNumber(val,min,max,mode) */
/* 功能说明:验证数值 */
/* function CheckPositive(val,min,max,mode) */
/* 功能说明:验证正数值 */
/* function CheckNegative(val,min,max,mode) */
/* 功能说明:验证负数值 */
/* function CheckFloat(val,min,max,mode) */
/* 功能说明:验证浮点数值 */
/* function CheckPath(val,mode) */
/* 功能说明:验证文件路径 */
/* function CheckURL(val,mode) */
/* 功能说明:验证URL */
/* function CheckChinaIDCard_J(val,mode) */
/* 功能说明:验证身份证 */
/* function isInteger(sNum) */
/* 功能说明:验证整数 */
/* function CheckZip(val,slen,mode) */
/* 功能说明:验证Zip */
/* 输入参数:mode真&假(是否允许为空) */
/* val表单(被判断项),va2表单(被判断项) */
/* max(最大值),min(最小值) ...... */
/* 编写时间: 2003.09.08.2214 */
/*$#################################################$*/
//验证字符串数据
function CheckData(valname,val,valimode,limitlen){
if( val.value.indexOf("<",0)>0 || val.value.indexOf(">",0)>0){
alert(valname+"不能包含<或>字符!。");
val.focus();
val.select();
return false;
}
if(valimode==1){
if(isblank(val.value)){
alert(valname+"不能为空!");
val.focus();
val.select();
return false;
}
tmp=new String(val.value)
if(istoolong(tmp,limitlen)){
alert(valname+"不能超过"+limitlen+"个字符!");
val.focus();
val.select();
return false;
}
}
else{
tmp=new String(val.value)
if(istoolong(tmp,limitlen)){
alert(valname+"不能超过"+limitlen+"个字符!!");
val.focus();
val.select();
return false;
}
}
return true;
}
function isblank(str){
var i;
var len=str.length;
for(i=0;i<len;++i){
if(str.charAt(i)!=" ")
return false;
}
return true;
}
function istoolong(str,i){
var len=str.length;
if(i==0)
return false;
else{
if(len>i)
return true;
else
return false;
}
}
//验证用户名
function CheckUserName(val,min,max){
var len = val.value.length;
if (len<min || len>max){
alert("用户名长度不正确,应为"+min+"-"+max+"个英文字母、数字。");
val.focus();
val.select();
return false;
}
for (i=0;i<val.value.length;i++){
var ch = val.value.charAt(i);
if ( (ch<"0" || ch>"9") && (ch<"a" || ch >"z")){
alert("用户名必须由小写字母或数字组成。");
val.focus();
val.select();
return false;
}
}
var first =val.value.charAt(0)
if (first<"a" || ch >"z"){
alert("用户名必须由小写字母开头。");
val.focus();
val.select();
return false;
}
return true;
}
//验证密码
function CheckPassWord(val,min,max){
var len = val.value.length;
if (len<min || len>max){
alert("密码长度不正确,应为"+min+"-"+max+"个英文字母、数字。");
val.focus();
val.select();
return false;
}
for (i=0;i<val.value.length;i++){
var ch = val.value.charAt(i);
if ( (ch<"0" || ch>"9") && (ch<"a" || ch >"z")){
alert("密码必须由小写字母或数字组成。");
val.focus();
val.select();
return false;
}
}
return true;
}
//验证密码匹配
function IsSame(val1,val2){
if (val1.value != val2.value ){
alert("两次输入的密码不相同。");
val2.focus();
val2.select();
return false;
}
else
return true;
}
//验证Email
function CheckEmail(val,mode){
if((mode==0) && (val.value=="")){
return true;
}
var etext
var elen
var i
var aa
etext=val.value
elen=etext.length
if (elen<5){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
i= etext.indexOf("@",0)
if (i==0 || i==-1 || i==elen-1){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
else{
if (etext.indexOf("@",i+1)!=-1){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
}
if (etext.indexOf("..",i+1)!=-1){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
i=etext.indexOf(".",0)
if (i==0 || i==-1 || etext.charAt(elen-1)=='.'){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
if ( etext.charAt(0)=='-' || etext.charAt(elen-1)=='-'){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
if ( etext.charAt(0)=='_' || etext.charAt(elen-1)=='_'){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
for (i=0;i<=elen-1;i++){
aa=etext.charAt(i)
if (!((aa=='.') || (aa=='@') || (aa=='-') ||(aa=='_') || (aa>='0' && aa<='9') || (aa>='a' && aa<='z') || (aa>='A' && aa<='Z'))){
alert("请输入正确的Email。");
val.focus();
val.select();
return false;
}
}
return true;
}
//验证用户身高
function CheckValHeight(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
}
var len = val.value.length;
if (len<min || len>max){
alert("请输入正确的身高数据。");
val.focus();
val.select();
return false;
}
var val2 = val.value;
for (i=0;i<val2.length;i++){
var ch = val2.charAt(i);
if ( (ch<"0" || ch>"9") ){
alert("身高数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
}
if (isNaN(val2)){
alert("身高数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
else if (parseInt(val2)<=0){
alert("身高数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('0')==0){
alert("身高数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
return true;
}
//验证用户体重
function CheckValWeight(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
}
var len = val.value.length;
if (len<min || len>max){
alert("请输入正确的体重数据。");
val.focus();
val.select();
return false;
}
var val2 = val.value;
for (i=0;i<val2.length;i++){
var ch = val2.charAt(i);
if ( (ch<"0" || ch>"9") ){
alert("体重数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
}
if (isNaN(val2)){
alert("体重数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
else if (parseInt(val2)<=0){
alert("体重数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('0')==0){
alert("体重数据必须由有效数字组成。");
val.focus();
val.select();
return false;
}
return true;
}
//验证数值
function CheckNumber(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
}
var len = val.value.length;
if (len<min || len>max){
alert("请输入正确的数值。");
val.focus();
val.select();
return false;
}
var val2 = val.value;
for (i=1;i<val2.length;i++){
var ch = val2.charAt(i);
if ( (ch<"0" || ch>"9" ) ){
alert("请输入正确的数值。");
val.focus();
val.select();
return false;
}
}
if (isNaN(val2)){
alert("请输入正确的数值。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('0')==0 && len>1){
alert("请输入正确的有效数值。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('-')==0 && val2.indexOf('0')==1){
alert("请输入正确的有效数值。");
val.focus();
val.select();
return false;
}
return true;
}
//验证正数值
function CheckPositive(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
}
if(!CheckNumber(val,min,max,mode)){
val.focus();
val.select();
return false;
}
if (parseInt(val.value)<=0){
alert("数据必须为有效的正整数。");
val.focus();
val.select();
return false;
}
return true;
}
//验证负数值
function CheckNegative(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
}
if(!CheckNumber(val,min,max,mode)){
val.focus();
val.select();
return false;
}
if (parseInt(val.value)>=0){
alert("数据必须为有效的负整数。");
val.focus();
val.select();
return false;
}
return true;
}
//验证浮点数值
function CheckFloat(val,min,max,mode){
if((mode==0) && (val.value=="")){
return true;
}
var len = val.value.length;
if (len<min || len>max){
alert("请输入正确的浮点数值。");
val.focus();
val.select();
return false;
}
var val2 = val.value;
for (i=1;i<val2.length;i++){
var ch = val2.charAt(i);
if ( (ch<"0" || ch>"9" ) ){
if(ch!="."){
alert("请输入正确的浮点数值。");
val.focus();
val.select();
return false;
}
}
}
if (isNaN(val2)){
alert("请输入正确的浮点数值。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('0')==0 && val2.indexOf('.')!=1){
alert("请输入正确的有效浮点数值。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('-')==0 && val2.indexOf('0')==1 && val2.indexOf('.')!=2){
alert("请输入正确的有效浮点数值。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('-')==0 && val2.indexOf('.')==1){
alert("请输入正确的有效浮点数值。");
val.focus();
val.select();
return false;
}
else if (val2.indexOf('.')==0){
alert("请输入正确的有效浮点数值。");
val.focus();
val.select();
return false;
}
return true;
}
//验证文件路径
function CheckPath(val,mode){
if((mode==0) && (val.value=="")){
return true;
}
var val2 = val.value;
if ( val2.indexOf(':\\')>0 ){
var isNot=" !@#$^*()'`~|]}[{;.>,<?%&+=";
if (val2.indexOf('\"')>0){
alert("请输入正确的文件路径。");
val.focus();
val.select();
return false;
}
else{
for (var i = 0;i < val2.length;i++){
for (var x = 1 ;x < isNot.length;x++){
if (val2.charAt(i)==isNot.charAt(x)){
alert("请输入正确的文件路径。");
val.focus();
val.select();
return false;
}
}
}
}
}
else{
alert("请输入正确的文件路径。");
val.focus();
val.select();
return false;
}
return true;
}
//验证URL
function CheckURL(val,mode){
if((mode==0) && (val.value=="")){
return true;
}
var val2 = val.value;
if ( val2.indexOf('://')>0 ){
var isNot=" !@$^*()'`~|]}[{;.>,<";
if (val2.indexOf('\"')>0){
alert("请输入正确的URL。");
val.focus();
val.select();
return false;
}
else{
for (var i = 0;i < val2.length;i++){
for (var x = 1 ;x < isNot.length;x++){
if (val2.charAt(i)==isNot.charAt(x)){
alert("请输入正确的URL。");
val.focus();
val.select();
return false;
}
}
}
}
}
else{
alert("请输入正确的URL。");
val.focus();
val.select();
return false;
}
return true;
}
//验证身份证
function CheckChinaIDCard_J(val,mode){
if((mode==0) && (val.value=="")){
return true;
}
sNo = val.value.toString()
if (!isInteger(sNo)) {
alert("请输入正确的身份证。");
val.focus();
val.select();
return false
}
switch(sNo.length){
case 15: if (isValidDate(sNo.substr(6,2),sNo.substr(8,2),sNo.substr(10,2))) {
return true
}
case 17: if (isValidDate(sNo.substr(6,4),sNo.substr(10,2),sNo.substr(12,2))) {
return true
}
}
alert("请输入正确的身份证。");
val.focus();
val.select();
return false
}
function isInteger(sNum) {
var num
num=new RegExp('[^0-9_]','')
if (isNaN(sNum)) {
return false
}
else {
if (sNum.search(num)>=0) {
return false
}
else {
return true
}
}
}
//验证Zip
function CheckZip(val,slen,mode){
if((mode==0) && (val.value=="")){
return true;
}
if(val.value.length!=slen){
alert('请输入正确的邮政编码!!');
val.focus();
val.select();
return false
}
var r1
r1 = new RegExp('[^0-9]','');
if ( val.value.search(r1) >= 0 ) {
alert('请输入正确的邮政编码!!');
val.focus();
val.select();
return false
}
else
return true;
}
电话号码的验证
要求:

(1)电话号码由数字、"("、")"和"-"构成

(2)电话号码为3到8位

(3)如果电话号码中包含有区号,那么区号为三位或四位

(4)区号用"("、")"或"-"和其他部分隔开

(5)移动电话号码为11或12位,如果为12位,那么第一位为0

(6)11位移动电话号码的第一位和第二位为"13"

(7)12位移动电话号码的第二位和第三位为"13"

根据这几条规则,可以与出以下正则表达式:

(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)
<script language="javascript">
function PhoneCheck(s) {
var str=s;
var reg=/(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/
alert(reg.test(str));
}
</script>
<input type=text name="iphone">
<input type=button onclick="PhoneCheck(document.all.iphone.value)" value="Check">

Javascript 相关文章推荐
读jQuery之八 包装事件对象
Jun 21 Javascript
js模仿windows桌面图标排列算法具体实现(附图)
Jun 16 Javascript
js实现幻灯片播放图片示例代码
Nov 07 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
Mar 04 Javascript
JavaScript动态加载样式表的方法
Mar 21 Javascript
动态生成的DOM不会触发onclick事件的原因及解决方法
Aug 06 Javascript
JS实现table表格固定表头且表头随横向滚动而滚动
Oct 26 Javascript
基于vue开发的在线付费课程应用过程
Jan 25 Javascript
JS中Object对象的原型概念基础
Jan 29 Javascript
微信小程序之批量上传并压缩图片的实例代码
Jul 05 Javascript
vue实现计算器功能
Feb 22 Javascript
keep-alive不能缓存多层级路由菜单问题解决
Mar 10 Javascript
js checkbox(复选框) 使用集锦
Apr 28 #Javascript
js 数组操作代码集锦
Apr 28 #Javascript
ie和firefox不兼容的解决方法集合
Apr 28 #Javascript
js 表单验证方法(实用)
Apr 28 #Javascript
xml和web特殊字符
Apr 28 #Javascript
Firefox div高度自适应
Apr 28 #Javascript
jquery 获取json数据实现代码
Apr 27 #Javascript
You might like
phpMyAdmin2.11.6安装配置方法
2008/08/24 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
2014/11/22 PHP
jQuery 隔行换色 支持键盘上下键,按Enter选定值
2009/08/02 Javascript
Javascript document.referrer判断访客来源网址
2020/05/15 Javascript
按下回车键指向下一个位置的一个函数代码
2014/03/10 Javascript
js实现class样式的修改、添加及删除的方法
2015/01/20 Javascript
Shell脚本实现Linux系统和进程资源监控
2015/03/05 Javascript
Jquery $when done then的用法详解
2016/05/20 Javascript
EXT中单击button按钮grid添加一行(光标位置可设置)的实例代码
2016/06/02 Javascript
jquery对象与DOM对象转化
2017/02/08 Javascript
基于JavaScript实现的顺序查找算法示例
2017/04/14 Javascript
微信小程序授权获取用户详细信息openid的实例详解
2017/09/20 Javascript
ReactNative 之FlatList使用及踩坑封装总结
2017/11/29 Javascript
VUE+Element环境搭建与安装的方法步骤
2019/01/24 Javascript
vue键盘事件点击事件加native操作
2020/07/27 Javascript
解决vue中axios设置超时(超过5分钟)没反应的问题
2020/09/04 Javascript
在vue项目中 实现定义全局变量 全局函数操作
2020/10/26 Javascript
举例讲解Python中装饰器的用法
2015/04/27 Python
Python+OpenCV让电脑帮你玩微信跳一跳
2018/01/04 Python
Python文件循环写入行时防止覆盖的解决方法
2018/11/09 Python
使用k8s部署Django项目的方法步骤
2019/01/14 Python
python实现文件助手中查看微信撤回消息
2019/04/29 Python
用Python实现二叉树、二叉树非递归遍历及绘制的例子
2019/08/09 Python
python3 dict ndarray 存成json,并保留原数据精度的实例
2019/12/06 Python
python实现ip地址的包含关系判断
2020/02/07 Python
html5 拖拽及用 js 实现拖拽功能的示例代码
2020/10/23 HTML / CSS
Quiksilver荷兰官方网站:冲浪和滑雪板
2019/11/16 全球购物
KELLER SPORTS荷兰:在线订购最好的运动产品
2020/10/13 全球购物
电子信息工程自荐信
2014/05/26 职场文书
社会工作专业求职信
2014/07/15 职场文书
学校食品安全责任书
2015/01/29 职场文书
小学美术教学反思
2016/02/17 职场文书
正能量励志演讲稿三分钟(范文)
2019/07/11 职场文书
深度学习详解之初试机器学习
2021/04/14 Python
解决使用了nginx获取IP地址都是127.0.0.1 的问题
2021/09/25 Servers