JS验证表达函数,可不需要依赖form

来源:互联网 发布:照片查重软件 编辑:程序博客网 时间:2024/05/18 13:24

之前网上搜索了些JS表单验证插件,发现都必须是在FORM表单里验证,对于一些AJAX的表单保存不适合,于是自己写了一个

 

<script type="text/javascript" src="./jquery-1.4.2.min.js"></script><script type="text/javascript"><!--function check_data_type(){var AllErrorMsg = '';$("#check_date_form").find(".checkdate").each(function(i){var ckdate= new Array();var pattern;var v = $(this).val();var ckdate = $(this).attr("ckdate").split(",");var datetype = ckdate[0];var errormsg = ckdate[1];var ck = ckdate[2];switch(datetype){case 'Require' : pattern = /.+/;break;case 'Mobile' : pattern = /^1[0-9][0-9]\d{4,8}$/;break;case 'Tel' : pattern = /^\d+-\d+$/;break;case 'Email' : pattern = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;break;case 'Url' : pattern = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;break;case 'Number' : pattern = /^\d+$/;break;case 'Integer' : pattern = /^[-\+]?\d+$/;break;case 'Double' : pattern = /^[-\+]?\d+(\.\d+)?$/;break;case 'English' : pattern = /^[A-Za-z]+$/;break;case 'Chinese' : pattern = /^[\u0391-\uFFE5]+$/;break;default : pattern = /.+/;}if(ck == "0"){if(v != ''){rst = pattern.exec(v);if(!rst){AllErrorMsg = AllErrorMsg + errormsg + "\n";}}}else{rst = pattern.exec(v);if(!rst){AllErrorMsg = AllErrorMsg + errormsg + "\n";}}});if(AllErrorMsg != ''){alert(AllErrorMsg);return false;}else{return true;}}function save(){if(!check_data_type()){return false;}}//--></script><!--1、需引用JQ核心文件,如:jquery-1.4.2.min.js2、定义需验证表单项的容器 id=check_date_form3、class="checkdate" 标记需要验证表单4、ckdate="Mobile,手机号格式不正确,0" 对应解释 ckdate="[验证规则],[验证错误提示],[0表示填写了数据才验证,为空时不验证]"--><table id="check_date_form"><tr><td colspan="4">标题:<input type="text" name="tender_title" id="tender_title" class="checkdate" value="" ckdate="Require,标题不能为空"/></td></tr><tr><td>手机:</td><td><input type="text" name="mob" id="mob" value="" class="checkdate" ckdate="Mobile,手机号格式不正确,0"/></td><td>固定电话:</td><td><input type="text" name="tel" id="tel" value="" class="checkdate" ckdate="Tel,固定电话格式不正确,0"/></td></tr><tr><td>QQ:</td><td><input type="text" name="qq" id="qq"  value="" class="checkdate" ckdate="Number,QQ号格式不正确,0"/></td><td>邮箱:</td><td><input type="text" name="email" id="email"  value="" class="checkdate" ckdate="Email,邮箱格式不正确,0"/></td></tr><tr><td colspan="4"><input type="button" value="保存" onclick="save();" /></td></tr></table>


 

原创粉丝点击