一、验证主单号不能重复添加的通过ajax返回 masterBillCode,是调用的ajax
主单号:<input type="text" name="deliverCostDetail.masterBillCode" field="MASTER_BILL_CODE" class="easyui-validatebox" data-options="required:true,validType:['numOrLine','masterBillCode','length[2,12]']" />
二、下面是jquery 验证.
$(function() { $.extend($.fn.validatebox.defaults.rules, { idcard : {// 验证身份证 validator : function(value) { return /^\s*\d{15}(\d{2}[A-Za-z0-9])?\s*$/i.test(value); }, message : '身份证号码格式不正确' }, minLength: { validator: function(value, param){ var len=$.trim(value).length; return len >= param[0]; }, message: '至少{0}个字符.' }, maxLength: { validator: function(value, param){ var len=$.trim(value).length; return len <= param[0]; }, message: '最多{0}个字符.' }, maxCharLength: { validator: function(value, param){ return charLength($.trim(value)) <= param[0]; }, message: '最多录入{0}个字符.' }, length:{validator:function(value,param){ var len=$.trim(value).length; return len>=param[0]&&len<=param[1]; }, message:"内容长度必须介于{0}和{1}之间." }, phone : {// 验证电话号码 validator : function(value) { return /^\s*((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?\s*$/i.test(value); }, message : '格式不正确,请参考格式:020-88888888' }, mobile : {// 验证手机号码 validator : function(value) { return /^\s*(13|15|18)\d{9}\s*$/i.test(value); }, message : '手机号格式不正确' }, intOrFloat : {// 验证整数或小数 validator : function(value) { return /^\s*\d+(\.\d+)?\s*$/i.test(value); }, message : '必须整数或小数' }, currency : {// 验证货币 validator : function(value) { return /^\s*\d+(\.\d+)?\s*$/i.test(value); }, message : '货币格式不正确' }, num : {// 验证数字 validator : function(value) { return /^\s*\d+\s*$/i.test(value); }, message : '必须数字' }, numOrLine : {// 验证数字 或者"-" validator : function(value) { return /^\s*[0-9-]+\s*$/i.test(value); }, message : '必须数字和-' }, integer : {// 验证整数 validator : function(value) { return /^\s*([1-9]\d*|0)\s*$/i.test(value); }, message : '必须整数' }, age : {// 验证年龄 validator : function(value) { return /^\s*(?:[1-9][0-9]?|1[01][0-9]|120)\s*$/i.test(value); }, message : '年龄必须是0到120之间的整数' }, chinese : {// 验证中文 validator : function(value) { return /^\s*[\Α-\¥]+\s*$/i.test(value); }, message : '请输入中文' }, english : {// 验证英语 validator : function(value) { return /^\s*[A-Za-z]+\s*$/i.test(value); }, message : '请输入英文' }, ne : {// 验证数字或英文 validator : function(value) { return /^\s*\w+\s*$/i.test(value); }, message : '请输入数字或英文' }, nande : {// 验证数字和英文 validator : function(value) { return /^\s*(([A-Za-z]+\d+\w*)|(\d+[A-Za-z]+\w*))\s*$/i.test(value); }, message : '必须数字和英文组合' }, neOrLine : {// 验证数字、中划线、英文 validator : function(value) { return /^\s*(\w|-)+\s*$/i.test(value); }, message : '请输入数字、英文或中划线' }, cne : {// 验证汉字、数字、英文 validator : function(value) { return /^\s*([\Α-\¥]|\w)+\s*$/i.test(value); }, message : '请输入汉字、数字或英文' }, ce : {// 验证汉字、英文 validator : function(value) { return /^\s*([\Α-\¥]|[A-Za-z])+\s*$/i.test(value); }, message : '请输入汉字或英文' }, cn : {// 验证汉字、数字 validator : function(value) { return /^\s*([\Α-\¥]|\d)+\s*$/i.test(value); }, message : '请输入汉字或数字' }, unnormal : {// 验证是否包含空格和非法字符 validator : function(value) { return /.+/i.test(value); }, message : '输入值不能为空和包含其他非法字符' }, username : {// 验证用户名 validator : function(value) { return /^\s*[a-zA-Z][a-zA-Z0-9_]{5,15}\s*$/i.test(value); }, message : '用户名不合法(字母开头,允许6-16字节,允许字母数字下划线)' }, ip : {// 验证IP地址 validator : function(value) { return /\s*d+.d+.d+.d+\s*/i.test(value); }, message : 'IP地址格式不正确' }, name : {// 验证姓名,可以是中文或英文 validator : function(value) { return /^\s*[\Α-\¥]+\s*$/i.test(value)|/^\s*\w+[\w\s]+\w+\s*$/i.test(value); }, message : '请输入姓名' }, date : {// 验证姓名,可以是中文或英文 validator : function(value) { //格式yyyy-MM-dd或yyyy-M-d return /^\s*(?:(?!0000)[0-9]{4}([-]?)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-]?)0?2\2(?:29))\s*$/i.test(value); }, message : '清输入合适的日期格式' },
//备注:var jsonobj=eval('('+obj+')'); 也可以修改成 var jsonobj = jQuery.parseJSON(obj);
masterBillCode : {// 验证主单号不能重复 validator : function(value) { var obj = $.ajax({ type: "POST", async:false, url: "deliverCostDetailAction!queryMasterBillCode.action", cache:false, dataType:"json", data: {"deliverCostDetail.masterBillCode":value}, success: function(data){} }).responseText; var jsonobj=eval('('+obj+')'); return jsonobj.result; }, message : '主单号已存在' },
same:{ validator : function(value, param){ if($("#"+param[0]).val() != "" && value != ""){ return $("#"+param[0]).val() == value; }else{ return true; } }, message : '两次输入的密码不一致!' } }); });