前端校验表单项内容是否合规的JS脚本代码

用途:校验ip地址的格式
输入:strIP:ip地址
返回:如果通过验证返回true,否则返回false;

*/
function isIP(strIP) {
if (isNull(strIP)) return false;
var re=/^(\d+).(\d+).(\d+).(\d+)$/g //匹配IP地址的正则表达式
if(re.test(strIP))
{
if( RegExp.$1 <256 && RegExp.$2<256 && RegExp.$3<256 && RegExp.$4<256) return true;
}
return false;
}

/*
用途:检查输入字符串是否为空或者全部都是空格
输入:str
返回:
如果全是空返回true,否则返回false
*/
function isNull( str ){
if ( str == “” ) return true;
var regu = “1+$”;
var re = new RegExp(regu);
return re.test(str);
}

/*
用途:检查输入对象的值是否符合整数格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false

*/
function isInteger( str ){
var regu = /2{0,1}[0-9]{1,}$/;
return regu.test(str);
}

/*
用途:检查输入手机号码是否正确
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

*/
function checkMobile( s ){
var regu =/3[3][0-9]{9}$/;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
}else{
return false;
}
}

/*
用途:检查输入字符串是否符合正整数格式
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

*/
function isNumber( s ){
var regu = “4+$”;
var re = new RegExp(regu);
if (s.search(re) != -1) {
return true;
} else {
return false;
}
}

/*
用途:检查输入字符串是否是带小数的数字格式,可以是负数
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

*/
function isDecimal( str ){
if(isInteger(str)) return true;
var re = /5{0,1}(\d+)[.]+(\d+)$/;
if (re.test(str)) {
if(RegExp.$10&&RegExp.$20) return false;
return true;
} else {
return false;
}
}

/*
用途:检查输入对象的值是否符合端口号格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false

*/
function isPort( str ){
return (isNumber(str) && str<65536);
}

/*
用途:检查输入对象的值是否符合E-Mail格式
输入:str 输入的字符串
返回:如果通过验证返回true,否则返回false

*/
function isEmail( str ){
var myReg = /6+@([_A-Za-z0-9]+.)+[A-Za-z0-9]{2,3}$/;
if(myReg.test(str)) return true;
return false;
}

/*
用途:检查输入字符串是否符合金额格式
格式定义为带小数的正数,小数点后最多三位
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

/
function isMoney( s ){
var regu = “7+[.][0-9]{0,3}$”;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
} else {
return false;
}
}
/

用途:检查输入字符串是否只由英文字母和数字和下划线组成
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

*/
function isNumberOr_Letter( s ){//判断是否是数字或字母

var regu = “8+$”;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
}else{
return false;
}
}
/*
用途:检查输入字符串是否只由英文字母和数字组成
输入:
s:字符串
返回:
如果通过验证返回true,否则返回false

*/
function isNumberOrLetter( s ){//判断是否是数字或字母

var regu = “9+$”;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
}else{
return false;
}
}
/*
用途:检查输入字符串是否只由汉字、字母、数字组成
输入:
value:字符串
返回:
如果通过验证返回true,否则返回false

*/
function isChinaOrNumbOrLett( s ){//判断是否是汉字、字母、数字组成

var regu = “10+$”;
var re = new RegExp(regu);
if (re.test(s)) {
return true;
}else{
return false;
}
}

/*
用途:判断是否是日期
输入:date:日期;fmt:日期格式
返回:如果通过验证返回true,否则返回false
*/
function isDate( date, fmt ) {
if (fmtnull) fmt=“yyyyMMdd”;
var yIndex = fmt.indexOf(“yyyy”);
if(yIndex
-1) return false;
var year = date.substring(yIndex,yIndex+4);
var mIndex = fmt.indexOf(“MM”);
if(mIndex==-1) return false;
var month = date.substring(mIndex,mIndex+2);
var dIndex = fmt.indexOf(“dd”);
if(dIndex==-1) return false;
var day = date.substring(dIndex,dIndex+2);
if(!isNumber(year)||year>“2100” || year< “1900”) return false;
if(!isNumber(month)||month>“12” || month< “01”) return false;
if(day>getMaxDay(year,month) || day< “01”) return false;
return true;
}

function getMaxDay(year,month) {
if(month4||month6||month9||month11)
return “30”;
if(month2)
if(year%4
0&&year%100!=0 || year%400==0)
return “29”;
else
return “28”;
return “31”;
}

/*
用途:字符1是否以字符串2结束
输入:str1:字符串;str2:被包含的字符串
返回:如果通过验证返回true,否则返回false

*/
function isLastMatch(str1,str2)
{
var index = str1.lastIndexOf(str2);
if(str1.length==index+str2.length) return true;
return false;
}

/*
用途:字符1是否以字符串2开始
输入:str1:字符串;str2:被包含的字符串
返回:如果通过验证返回true,否则返回false

*/
function isFirstMatch(str1,str2)
{
var index = str1.indexOf(str2);
if(index==0) return true;
return false;
}

/*
用途:字符1是包含字符串2
输入:str1:字符串;str2:被包含的字符串
返回:如果通过验证返回true,否则返回false

*/
function isMatch(str1,str2)
{
var index = str1.indexOf(str2);
if(index==-1) return false;
return true;
}

/*
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确,
且结束如期>=起始日期
输入:
startDate:起始日期,字符串
endDate:结束如期,字符串
返回:
如果通过验证返回true,否则返回false

*/
function checkTwoDate( startDate,endDate ) {
if( !isDate(startDate) ) {
alert(“起始日期不正确!”);
return false;
} else if( !isDate(endDate) ) {
alert(“终止日期不正确!”);
return false;
} else if( startDate > endDate ) {
alert(“起始日期不能大于终止日期!”);
return false;
}
return true;
}

/*
用途:检查输入的Email信箱格式是否正确
输入:
strEmail:字符串
返回:
如果通过验证返回true,否则返回false

*/
function checkEmail(strEmail) {
//var emailReg = /11+@([_a-z0-9]+.)+[a-z0-9]{2,3}KaTeX parse error: Undefined control sequence: \w at position 23: … emailReg = /^[\̲w̲-]+(\.[\w-]+)*@…/;
if( emailReg.test(strEmail) ){
return true;
}else{
alert(“您输入的Email地址格式不正确!”);
return false;
}
}

/*
用途:检查输入的电话号码格式是否正确
输入:
strPhone:字符串
返回:
如果通过验证返回true,否则返回false

*/
function checkPhone( strPhone ) {
var phoneRegWithArea = /12[1-9]{2,3}-[0-9]{5,10}/;varphoneRegNoArea=/[1−9]1[0−9]5,8/; var phoneRegNoArea = /^[1-9]{1}[0-9]{5,8}/;varphoneRegNoArea=/[19]1[09]5,8/;
var prompt = “您输入的电话号码不正确!”
if( strPhone.length > 9 ) {
if( phoneRegWithArea.test(strPhone) ){
return true;
}else{
alert( prompt );
return false;
}
}else{
if( phoneRegNoArea.test( strPhone ) ){
return true;
}else{
alert( prompt );
return false;
}

}
}

/*
用途:检查复选框被选中的数目
输入:
checkboxID:字符串
返回:
返回该复选框中被选中的数目

*/

function checkSelect( checkboxID ) {
var check = 0;
var i=0;
if( document.all(checkboxID).length > 0 ) {
for( i=0; i<document.all(checkboxID).length; i++ ) {
if( document.all(checkboxID).item( i ).checked ) {
check += 1;
}

}
}else{
if( document.all(checkboxID).checked )
check = 1;
}
return check;
}

function getTotalBytes(varField) {
if(varField == null)
return -1;

var totalCount = 0;
for (i = 0; i< varField.value.length; i++) {
if (varField.value.charCodeAt(i) > 127)
totalCount += 2;
else
totalCount++ ;
}
return totalCount;
}

function getFirstSelectedValue( checkboxID ){
var value = null;
var i=0;
if( document.all(checkboxID).length > 0 ){
for( i=0; i<document.all(checkboxID).length; i++ ){
if( document.all(checkboxID).item( i ).checked ){
value = document.all(checkboxID).item(i).value;
break;
}
}
} else {
if( document.all(checkboxID).checked )
value = document.all(checkboxID).value;
}
return value;
}

function getFirstSelectedIndex( checkboxID ){
var value = -2;
var i=0;
if( document.all(checkboxID).length > 0 ){
for( i=0; i<document.all(checkboxID).length; i++ ) {
if( document.all(checkboxID).item( i ).checked ) {
value = i;
break;
}
}
} else {
if( document.all(checkboxID).checked )
value = -1;
}
return value;
}

function selectAll( checkboxID,status ){

if( document.all(checkboxID) == null)
return;

if( document.all(checkboxID).length > 0 ){
for( i=0; i<document.all(checkboxID).length; i++ ){

document.all(checkboxID).item( i ).checked = status;
}
} else {
document.all(checkboxID).checked = status;
}
}

function selectInverse( checkboxID ) {
if( document.all(checkboxID) == null)
return;

if( document.all(checkboxID).length > 0 ) {
for( i=0; i<document.all(checkboxID).length; i++ ) {
document.all(checkboxID).item( i ).checked = !document.all(checkboxID).item( i ).checked;
}
} else {
document.all(checkboxID).checked = !document.all(checkboxID).checked;
}
}

function checkDate( value ) {
if(value==‘’) return true;
if(value.length!=8 || !isNumber(value)) return false;
var year = value.substring(0,4);
if(year>“2100” || year< “1900”)
return false;

var month = value.substring(4,6);
if(month>“12” || month< “01”) return false;

var day = value.substring(6,8);
if(day>getMaxDay(year,month) || day< “01”) return false;

return true;
}

/*
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确或都为空
且结束日期>=起始日期
输入:
startDate:起始日期,字符串
endDate: 结束日期,字符串
返回:
如果通过验证返回true,否则返回false

*/
function checkPeriod( startDate,endDate ) {
if( !checkDate(startDate) ) {
alert(“起始日期不正确!”);
return false;
} else if( !checkDate(endDate) ) {
alert(“终止日期不正确!”);
return false;
} else if( startDate > endDate ) {
alert(“起始日期不能大于终止日期!”);
return false;
}
return true;
}

/*
用途:检查证券代码是否正确
输入:
secCode:证券代码
返回:
如果通过验证返回true,否则返回false

*/
function checkSecCode( secCode ) {
if( secCode.length !=6 ){
alert(“证券代码长度应该为6位”);
return false;
}

if(!isNumber( secCode ) ){
alert(“证券代码只能包含数字”);

return false;
}
return true;
}

/****************************************************
function:cTrim(sInputString,iType)
description:字符串去空格的函数
parameters:iType:1=去掉字符串左边的空格

2=去掉字符串左边的空格
0=去掉字符串左边和右边的空格
return value:去掉空格的字符串
****************************************************/
function cTrim(sInputString,iType)
{
var sTmpStr = ’ ';
var i = -1;

if(iType == 0 || iType == 1)
{
while(sTmpStr == ’ ')
{
++i;
sTmpStr = sInputString.substr(i,1);
}
sInputString = sInputString.substring(i);
}

if(iType == 0 || iType == 2)
{
sTmpStr = ’ ';
i = sInputString.length;
while(sTmpStr == ’ ')
{
–i;
sTmpStr = sInputString.substr(i,1);
}
sInputString = sInputString.substring(0,i+1);
}
return sInputString;
}

详细出处参考:http://www.jb51.net/article/4976.htm


  1. ↩︎

  2. - ↩︎

  3. 1 ↩︎

  4. 0-9 ↩︎

  5. - ↩︎

  6. -_A-Za-z0-9 ↩︎

  7. 0-9 ↩︎

  8. 0-9a-zA-Z_ ↩︎

  9. 0-9a-zA-Z ↩︎

  10. 0-9a-zA-Z\u4e00-\u9fa5 ↩︎

  11. _a-z0-9 ↩︎

  12. 0 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/332204.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

过程(栈帧结构是干货)

【0】写在前面 过程&#xff08;栈帧结构是干货&#xff09;&#xff1b;本文总结于csapp&#xff0c; 加上自己的理解&#xff1b;【1】栈帧结构 每个函数的每次调用&#xff0c;都有它自己独立的一个栈帧&#xff0c;这个栈帧中维持着所需要的各种信息。 过程调用&#xf…

山东小学信息技术课本 python 五年级_山东教育出版社小学信息技术五年级上册教案 全册.doc...

山东教育出版社小学信息技术五年级上册教案 全册电子备课教学案学年度 第一学期学科 信息技术年级 五年级姓名教师个人备课情况统计一览表 项目?精备课二次备课课堂检测课后反思交流平台 篇数月份第( )月第( )月第( )月第( )月备注&#xff1a;为便于自查&#xff0c;此表由教…

apache ranger_Apache Ranger插件的美丽简洁

apache ranger如果您在这里&#xff0c;您已经知道什么是Apache Ranger 。 这是在Hadoop框架中管理安全性的最流行&#xff08;即使不是唯一&#xff09;的方法。 它与Active Directory&#xff0c;Kerberos和其他各种身份验证集成在一起&#xff0c;但是我认为最有趣的功能是其…

可重定位目标文件

【0】GCC将源代码转化成可执行代码的流程 &#xff08;1&#xff09;C预处理器cpp扩展源代码&#xff0c;插入所有用#include命令指定的文件&#xff0c;并扩展声明的宏&#xff1b;&#xff08;2&#xff09;编译器ccl产生两个源代码的汇编代码&#xff1a;*.s&#xff1b;&a…

经典颜色的RGB值

红 RED    品红Magenta&#xff08;热情&#xff09;    CMYK&#xff1a;C15 M100 Y20 K0   RGB: R207 G0 B112    洋红Carmine&#xff08;大胆&#xff09;   CMYK: C100 M0 Y60 K10   RGB: R215 G0 B64    宝石红Ruby&#xff08;富贵&#xff09;   CMYK…

python中for x in range_python教程:对 [lambda x: x*i for i in range(4)] 理解

题目&#xff1a;lst [lambda x: x*i for i in range(4)]res [m(2) for m in lst]print res实际输出&#xff1a;[6, 6, 6, 6]想要输出 [0, 2, 4, 6] 应该怎么改&#xff1f;如下&#xff1a;lst [lambda x, ii: x*i for i in range(4)]res [m(2) for m in lst]print res这…

adf.test_在ADF 12.2.1.3中使用基于JSON的REST Web服务

adf.test以前&#xff0c;我曾发布过有关在ADF中使用基于ADF BC的REST Web服务的信息。 现在&#xff0c;本文讨论使用通用数据控件使用基于JSON的REST Web服务。 您还可以查看有关Web服务的先前文章&#xff0c;以获取更多信息。 在ADF 12.2.1中使用应用程序模块快速创建SOA…

JSON字符串封装成Bean对象/JSON串反序列化成实体类对象/JSON字符串转换成Java对象

文章目录使用阿里巴巴的 JSON使用 ObjectMapperJSON字段与实体类属性不一致首先&#xff0c;我们建立一个实体类&#xff0c;这里简单定义了 name、sex、age 三个属性&#xff0c;以及 get、set、tostring方法。public class Student {private String name;private String sex;…

端到端的地址翻译(虚拟地址是怎样取到相应高速缓存的数据的?)

【0】写在前面-为什么需要虚拟存储器? 0.1&#xff09;定义&#xff1a;虚拟存储器其实就是借用了磁盘地址空间&#xff0c;还记得当初我们安装CentOS&#xff0c;划分的swap 文件系统吗&#xff1f; 0.2&#xff09;VM简化了链接和加载、代码和数据共享&#xff0c;以及应用…

python gevent教程_Python的gevent框架的入门教程

Python通过yield提供了对协程的基本支持&#xff0c;但是不完全。而第三方的gevent为Python提供了比较完善的协程支持。gevent是第三方库&#xff0c;通过greenlet实现协程&#xff0c;其基本思想是&#xff1a;当一个greenlet遇到IO操作时&#xff0c;比如访问网络&#xff0c…

qa/qc_专业QA如何实施可靠的CI / CD管道?

qa/qc过时的传统软件开发方法并不能接管不断升级的市场趋势&#xff0c;并且这些方法缺乏解决方案&#xff0c;无法解决引入“ 持续集成&#xff08;CI&#xff09;和持续交付&#xff08;CD&#xff09; ”的快速软件发布需求的增长。 除了CI / CD之外&#xff0c;您还需要具有…

程序员分类

1.优秀的debug能力 10K程序员&#xff1a;实现功能就不错了 20K程序员&#xff1a;编程我最牛&#xff0c;debug&#xff1f;我不太会&#xff01; 30K程序员&#xff1a;编程有点慢&#xff0c;debug快速搞定&#xff0c;回家睡觉&#xff01; 40K程序员&#xff1a;基本不写…

三菱q系列plc连接电脑步骤_三菱Q系列PLC与三菱变频器的CC-link通讯技术(我的学习笔记)...

三菱变频器可以通过CC-LINK的接线进行控制&#xff08;但需要另购买选件FR-A7NC&#xff0c;这选件是与变频器配套的通讯适配器&#xff0c;插在三菱变频器的选件插槽中&#xff09;&#xff0c;从而可以减少接线提高效率减少错误&#xff0c;接CC-LINK只需4根线就可以完全控制…

react提交数据到数据库_React型关系数据库事务

react提交数据到数据库Spring Framework最近宣布将提供对React式事务管理的支持 。 让我们深入研究它对R2DBC&#xff08;SQL数据库访问的React式规范&#xff09;如何工作。 事务管理是一种模式&#xff0c;而不是特定于技术的。 从这个角度来看&#xff0c;它的属性和运行时…

实模式切换到保护模式,为什么要开启A20地址线(系统升级产生的兼容性问题)

【-1】写在前面&#xff1a; 以下部分内容总结于 http://blog.csdn.net/ruyanhai/article/details/7181842 complementary: 兼容性是指运行在前期CPU&#xff0c;如8086/8088上的的程序&#xff0c;也可以运行在其以后的处理器&#xff0c;如80286上&#xff1b; 【0】看看in…

Windows 记事本的 ANSI、Unicode、UTF-8 这三种编码模式有什么区别?

先来解释一下这三种编码的历史吧&#xff1a; ANSI&#xff1a;最早的时候计算机ASCII码只能表示256个符号&#xff08;含控制符号&#xff09;&#xff0c;这个字符集表示英文字母足够&#xff0c;其中&#xff0c;我们键盘上可见的符号的编码范围是从32到126&#xff08;大小…

python编程、abc最大值_Python中abc

import abc指定metaclass属性将类设置为抽象类&#xff0c;抽象类本身只是用来约束子类的&#xff0c;不能被实例化class Animal(metaclassabc.ABCMeta): # 统一所有子类的方法abc.abstractmethod # 该装饰器限制子类必须定义有一个名为talk的方法def say(self):print(‘动物基…

(实模式+保护模式)模式切换的过程步骤(代码+文字解析)

【0】写在前面 文末的个人总结是干货&#xff0c;前面代码仅供参考的&#xff0c;且source code from orange’s implemention of a os. ; ; pmtest2.asm ; 编译方法&#xff1a;nasm pmtest2.asm -o pmtest2.com ; %include "pm.inc" ; 常量, 宏, 以及一些说…

骆驼(camel)命名法_Apache Camel 3 –骆驼核心vs骆驼核心引擎(较小的核心)

骆驼(camel)命名法Camel团队目前正在忙于Apache Camel 3的开发。已经完成了许多工作&#xff0c;到目前为止&#xff0c;我们已经发布了3个里程碑版本。 下一个里程碑版本4具有一些出色的新创新功能&#xff0c;这些功能我将在接下来的几个月中发布。 该博客的主题是我们在将骆…

Maven的依赖插件

文章目录mvn dependency:copy-dependenciesmvn dependency:treemvn dependency:listmvn dependency:copy-dependencies 导出项目所依赖的所有 jar 包&#xff0c;默认导出到 target/dependency 目录中。 1.第一种方式 在命令终端中&#xff0c;进入 pom.xml 所在的目录&…