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 相关文章推荐
javascript 模拟点击广告
Jan 02 Javascript
使用jquery动态加载javascript以减少服务器压力
Oct 29 Javascript
热点新闻滚动特效的js代码
Aug 17 Javascript
jQuery实现点击该行即可删除HTML表格行
Oct 17 Javascript
JAVASCRIPT代码编写俄罗斯方块网页版
Nov 26 Javascript
谈谈JS中常遇到的浏览器兼容问题和解决方法
Dec 17 Javascript
JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效)
Jul 07 Javascript
vuejs 单文件组件.vue 文件的使用
Jul 28 Javascript
JS实现的JSON数组去重算法示例
Apr 11 Javascript
vue.js的双向数据绑定Object.defineProperty方法的神奇之处
Jan 18 Javascript
原生js实现瀑布流效果
Mar 09 Javascript
JS sort排序详细使用方法示例解析
Sep 27 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
模拟OICQ的实现思路和核心程序(二)
2006/10/09 PHP
php重定向的三种方法分享
2012/02/22 PHP
PHP笔记之:日期函数的使用介绍
2013/04/24 PHP
php使用cookie显示用户上次访问网站日期的方法
2015/01/26 PHP
PHP计算当前坐标3公里内4个角落的最大最小经纬度实例
2016/02/26 PHP
php验证码生成器
2017/05/24 PHP
prototype 1.5 &amp; scriptaculous 1.6.1 学习笔记
2006/09/07 Javascript
Javascript在IE或Firefox下获取鼠标位置的代码
2009/12/18 Javascript
一些经常会用到的Javascript检测函数
2010/05/31 Javascript
基于jquery实现漂亮的动态信息提示效果
2011/08/02 Javascript
使用Post提交时须将空格转换成加号的解释
2013/01/14 Javascript
jQuery自动切换/点击切换选项卡效果的小例子
2013/08/12 Javascript
jQuery UI 实现email输入提示实例
2013/08/15 Javascript
探讨JQUERY JSON的反序列化类 using问题的解决方法
2013/12/19 Javascript
javascript结合Flexbox简单实现滑动拼图游戏
2016/02/18 Javascript
ionic实现带字的toggle滑动组件
2016/08/27 Javascript
详细总结Javascript中的焦点管理
2016/09/17 Javascript
vue父子组件的数据传递示例
2017/03/07 Javascript
浅谈JS对html标签的属性的干预以及对CSS样式表属性的干预
2017/06/25 Javascript
简单快速的实现js计算器功能
2017/08/17 Javascript
微信小程序-getUserInfo回调的实例详解
2017/10/27 Javascript
select获取下拉框的值 下拉框默认选中方法
2018/02/28 Javascript
快速解决vue-cli不能初始化webpack模板的问题
2018/03/20 Javascript
vue中接口域名配置为全局变量的实现方法
2018/09/20 Javascript
jQuery无冲突模式详解
2019/01/17 jQuery
[05:29]2014DOTA2国际邀请赛 赛后专访:LGDNewbee顺利过关
2014/07/13 DOTA
python生成随机mac地址的方法
2015/03/16 Python
Python批量发送post请求的实现代码
2018/05/05 Python
浅析PyTorch中nn.Linear的使用
2019/08/18 Python
Python3 无重复字符的最长子串的实现
2019/10/08 Python
pytorch中的自定义反向传播,求导实例
2020/01/06 Python
Python脚本导出为exe程序的方法
2020/03/25 Python
三好学生先进事迹材料
2014/08/28 职场文书
股东授权委托书
2014/10/15 职场文书
详解缓存穿透击穿雪崩解决方案
2021/05/28 Redis
Python+Selenium自动化环境搭建与操作基础详解
2022/03/13 Python