function addEvent(obj, evType, fn){ if (obj.addEventListener){ obj.addEventListener(evType, fn, false); return true; } else if (obj.attachEvent){ var r = obj.attachEvent("on"+evType, fn); return r; } else return false; } function emdecrypt (Str){ var s = new String; var i; for (i=0; i check[1]) { form[f].className +=' fail'; send = false; } break; case 'len': if(form[f].value.length != check[1]) { form[f].className +=' fail'; send = false; } break; case 'max': if(parseFloat(form[f].value) > parseFloat(check[1])) { form[f].className +=' fail'; send = false; } break; case 'min': if(parseFloat(form[f].value) < parseFloat(check[1])) { form[f].className +=' fail'; send = false; } break; case 'num': pat = /^[0-9]*$/; if(form[f].value.length && !pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'phone': pat = /^[ 0-9]*$/; if(!pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'notnum': pat = /^[0-9]*$/; if(pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'nosp': if(form[f].value.match(' ')) { form[f].className +=' fail'; send = false; } break; case 'alp': pat = /^[a-zA-Z]*$/; if(form[f].value.length && !pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'alpnum': pat = /^[0-9a-zA-Z]*$/; if(form[f].value.length && !pat.test(form[f].value) ) { form[f].className +=' fail'; send = false; } break; case 'date': pat = /^(\d{1,2})\.(\d{1,2})\.(\d{4})$/; if(!pat.test(form[f].value) && form[f].value.length) { form[f].className +=' fail'; send = false; } break; case 'email': pat = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i; if(form[f].value.length && !pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'money': pat = /^[0-9.,-]*$/; if(!pat.test(form[f].value) || !form[f].value.length) { form[f].className +=' fail'; send = false; } break; case 'checked': if(!form[f].checked) { form[f].parentNode.className +=' fail'; send = false; } break; case 'selected': if(form[f].selectedIndex==0) { form[f].className +=' fail'; send = false; } break; case 'ip': pat = /^([0-9]{0,2})+\.([0-9]{0,2})+\.([0-9]{0,2})+\.([0-9]{0,2})+$/; if(!pat.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'domain': pat = /^[0-9a-zA-Z.-_]*$/; if(!pat.test(form[f].value) || !form[f].value.length) { form[f].className +=' fail'; send = false; } break; case 'size': if(!/^[0-9]*%$/.test(form[f].value) || !/^[0-9]*px$/.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; case 'furl': pat = /^[a-zA-Z0-9-]*$/; if(!pat.test(form[f].value) || (form[f].value.length && form[f].value.match(' '))) { form[f].className +=' fail'; send = false; } break; case 'time': if(form[f].value.length && !/^[0-9:]*$/.test(form[f].value)) { form[f].className +=' fail'; send = false; } break; } } } } return send; }