增加了一个小校验功能,判断名称是否在数据库中存在
功能细节:
插入:不允许插入提示重复
编辑:不会提示重复
因数据量会很少, 不采用ajax方式。
正巧简单应用了一下validator。特此记录
JAVA代码
将所有名字拼接成字符串传递到前台
StringBuffer sb = new StringBuffer();
for (SubCompany subCompany: subCompanyService.selectByAll()) {
sb.append(subCompany.getCompanyName() + ",");
};
if(sb.length() > 0){
String subCompanyStrs = sb.substring(0,sb.length()-1);
model.addAttribute("subcompList",subCompanyStrs);
}
JS代码 接收后台传递过来的名字,以及当前自己的名字
var subcompNames = "$!subcompList";
var companyName = "$!{bean.companyName}";
JS代码 校验
jQuery.validator.addMethod("isName", function (value, element) {
var falg = true;
if(companyName != value){
if(subcompNames!=""){
var subcompNamess = subcompNames.split(",");
for (var i = 0 ; i< subcompNamess.length; i++){
if(value == subcompNamess[i]){
falg = false;
break;
}
}
}
}
return this.optional(element) || falg;
}, "该子公司已经存在");
var validator = $("#form-admin-add").validate({
rules:{
companyName:{
required:true,
isName:true,
maxlength:30
},
companyPerson:{
required:true
},
companyPhone:{
required:true,
maxlength:11
},
companyType:{
required:true,
}
},
messages: {
companyName: {
required: "请输入子公司名称"
},
companyPerson: {
required: "请输入负责人姓名"
},
companyPhone: {
required: "请输入负责人电话",
maxlength: "请输入正确的电话号"
},
companyType: {
required: "请选择类型"
}
}
});
以上就可以啦。