`
bcyy
  • 浏览: 1826751 次
文章分类
社区版块
存档分类
最新评论

很全的js 表单验证

 
阅读更多
function is_Empty(ve){
//空值交验:空返回 true 否则返回 false
if(ve.length > 0){
return false;
}
return true;
}
function is_String(ve){
//字符串:有效返回 true 否则返回 false
var re = /^(([A-Z]*|[a-z]*|/d*|[-_/~!@#/$%/^&/*/./(/)/[/]/{/}<>/?/////'/"]*)|.{0,5})$|/s/
if(re.test(ve)){
return false;
}
return true;
}
function is_Number(ve){
//是数字:true
var re = /^/d+$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Integer(ve){
//是正整型数字:true
var re = /^[0-9]*[1-9][0-9]*$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Double(ve){
//是正浮点数:true
var re=/^[-/+]?/d+(/./d+)?$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Character(ve){
//是字符:true
var re = /^[A-Za-z]+$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Chinese(ve){
//是汉字:true
var re = /^[/u0391-/uFFE5]+$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Email(ve){
//是邮件地址:true
var re = /^/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Phone(ve){
//是电话号码:true
var re = /^((/(/d{3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2,3}-)?[1-9]/d{6,7}$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Mobile(ve){
//是手机号码:true
var re = /^((/(/d{3}/))|(/d{3}/-))?13/d{9}$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_IdCard(ve){
//是身份证号码:true
var re = /^/d{15}(/d{2}[A-Za-z0-9])?$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Url(ve){
//是网址:true
var re = /^http:////[A-Za-z0-9]+/.[A-Za-z0-9]+[//=/?%/-&_~`@[/]/':+!]*([^<>/"/"])*$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Zip(ve){
//是邮编:true
var re = /^[0-9]/d{5}$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_QQ(ve){
//是QQ号码:true
var re = /^[1-9]/d{4,15}$/
if(!re.test(ve)){
return false;
}
return true;
}
function is_Tel(ve){
//是电话:true
var re = /^[()-]|[0-9]$/
if(!re.test(ve)){
return false;
}
return true;

}
function is_Date(ve,formatString){
//是日期:true
formatString = formatString || "ymd";
var m, year, month, day;
switch(formatString){
case "ymd" :
m = ve.match(new RegExp("^((//d{4})|(//d{2}))([-./])(//d{1,2})//4(//d{1,2})$"));
if(m == null ) return false;
day = m[6];
var m_n = int=parseInt(m[5]);
month = m_n-1;
year = (m[2].length == 4) ? m[2] : GetFullYear(parseInt(m[3], 10));
break;
case "dmy" :
m = op.match(new RegExp("^(//d{1,2})([-./])(//d{1,2})//2((//d{4})|(//d{2}))$"));
if(m == null ) return false;
day = m[1];
month = m[3]--;
year = (m[5].length == 4) ? m[5] : GetFullYear(parseInt(m[6], 10));
break;
default :
break;
}
//if(!parseInt(month)) return false;
//month = month==12 ?0:month;
var date = new Date(year, month, day);
return (typeof(date) == "object" && year == date.getFullYear() && month == date.getMonth() && day == date.getDate());
function GetFullYear(y){return ((y<30 ? "20" : "19") + y)|0;}
}
function is_LimitStr(ve,vmin,vmax){
//长度限制
vmin = vmin || 0;
vmax = vmax || Number.MAX_VALUE;
return vmin <= ve.length && ve.length <= vmax;
}
function is_LimitNum(ve,vmin,vmax){
//数值限制
vmin = vmin || 0;
vmax = vmax || Number.MAX_VALUE;
ve=parseInt(ve);
if(ve >= vmin && vmax >= ve){
return true;
}
return false;
//return vmin <= ve && ve <= vmax;
}
function is_Submit(theForm){
//交验表单theForm : 通过返回 true 否则弹出提示.
var ErrorItem = new Array() ;
var ErrorMessage = new Array();
var errLength = 1;
var obj = theForm || event.srcElement;
ErrorMessage.length = 1;
ErrorItem.length = 1;
ErrorMessage[0] = "提示:/t/t/t/t/n";
ErrorItem[0] = obj;
var count = obj.elements.length;
for(var i=0;i<count;i++){
with(obj.elements[i]){
var _objType = getAttribute("type");
//if(typeof(_dataType) == "object") continue;
if(getAttribute("type")=="hidden") continue;
var _dataType = getAttribute("dataType");
if(typeof(_dataType) == "object") continue;
if(getAttribute("Require") == "false" && value == "")continue;
switch(_dataType){
case "noEmpty":
if(eval(is_Empty(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Limit":
if(eval(is_LimitStr(value,getAttribute('min'),getAttribute('max')))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Number":
if(!eval(is_Number(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "LimitNum":
if(!eval(is_LimitNum(value,getAttribute('min'),getAttribute('max')))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Double":
if(!eval(is_Double(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Email":
if(!eval(is_Email(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Mobile":
if(!eval(is_Mobile(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Phone":
if(!eval(is_Phone(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Tel":
if(!eval(is_Tel(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "QQ":
if(!eval(is_QQ(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Zip":
if(!eval(is_Zip(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
case "Date" :
if(!eval(is_Date(value,getAttribute('format')))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
break;
default :
/*if(eval(is_String(value))){
ErrorItem[ErrorItem.length] = ErrorItem[0].elements[i]
ErrorMessage[ErrorMessage.length] = getAttribute("msg");
}
*/
break;
}
}
}
if(ErrorMessage.length > 1){
var errCount = ErrorItem.length;
for(var i=1;i<errCount;i++)
ErrorItem[i].style.color = "red";
alert(ErrorMessage.join("/n"));
ErrorItem[1].focus();
return false;
}

return true;

}
/**************************************************************
常用脚本
***************************************************************/
function setFocus(ob){
//设置光标
ob.focus();
}
function keyEnter(ob){
//光标移动
key=event.keyCode;
if(key==13){
ob.focus();
}
}
//去除空格
String.prototype.Trim = function()
{
return this.replace(/(^/s*)|(/s*$)/g, "");
}

function mOvr(src,clrOver){
if (!src.contains(event.fromElement)) {
src.bgColor = clrOver;
}
}
function mOut(src,clrIn) {
if (!src.contains(event.toElement)) {
src.style.cursor = 'default';
src.bgColor = clrIn;
}
}

function CheckInt(me){
var s="0123456789"
var c=String.fromCharCode(event.keyCode)
if (s.indexOf(c)<0){
event.keyCode=0;
return false;
}
}

function CheckFloat(me){
var s="0123456789."
var c=String.fromCharCode(event.keyCode)
if (s.indexOf(c)<0){
event.keyCode=0;
return false;
}
}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics