是否存在的校验

下面是一段利用bootstValidator对ItsmDemo表单进行校验的js方法,我们重点看的是remote校验器


  $('#ItsmDemo').bootstrapValidator({
                  message: '验证失败',
                  feedbackIcons: {
                    valid: 'glyphicon glyphicon-ok',
                    invalid: 'glyphicon glyphicon-remove',
                    validating: 'glyphicon glyphicon-refresh'
                }, 
                fields: {
                    'itsmDemoVo.userName': {
                    message: '用户名验证失败',
                    validators: {
                        notEmpty: {
                            message: '用户名不能为空'
                        },
                        stringLength: {
                            min: 6,
                            max: 30,
                            message: '用户名长度在6-30个字符之间!'
                        },
                        regexp: {
                            regexp: /^[a-zA-Z0-9_\.]+$/,
                            message: '用户名只能是拼音字母、数字或下划线组成'
                        },
                         remote: {
                                        url: baseURL+'/demo/checkUser.action',
                                        message: '用户名已存在!',
                                          
                                    }
                      
                    }
                }, 
                    
                    'itsmDemoVo.sex': {
                        validators: {
                            notEmpty: {
                                message: '出生日期性别不能为空'
                            }
                        }
                    }  
                    
                }
                  });

remote说明:

  1. BootstrapValidator会自动将用户在页面上填写的数据以”itsmDemoVo.userName“带过去 ,我们只需要在action中以改名称获取即可。

  2. 如果返回   String  msg="{\"valid\":"+flg+" }"; 为true,说明校验通过,反之校验不通过

  3. 在用户填写一个字符,它就会有一个请求,然后事实现实校验的结果

  4. 我们可以在url中带其他的参数到action中,如下的java代码:

url: baseURL+"/systemdef/checkSysCode.action?orgsyscode=<%=umsystemVo.getSyscode()%>",

     .在下面的action会对提交过来的数据进行校验并返回

@Action("checkMenuCode")
    public String checkMenuCode(){
        try{
            String menucode=request.getParameter("ummenuVo.menucode");         
            String menucodeOrginal = request.getParameter("menucode");
            
            boolean flg= true;
            
            /**
            校验不通过,
            1.编辑的时候
                menucodeOrginal not null
                um not null
                um.getmenucode!= menucodeOrginal
                
            2.添加的時候
                menucodeOrginal nul
                um not null
            */
            
            String sql = "select *from ummenu where menucode='"+menucode+"'";
            List<Ummenu> ummenus = ummenuService.getListBySql(sql);
            Ummenu um = new Ummenu();
            if(ummenus.size()>0){
               um = ummenus.get(0);
            }
            
            if(menucodeOrginal==null&&um!=null){
                flg = false;
            }
            if(menucodeOrginal!=null&&ummenus.size()>0&&!menucodeOrginal.equalsIgnoreCase(um.getMenucode())){
                flg = false;
            }
            
            /*
            if(ummenus!=null){
                if(ummenus.size()>0){
                    flg = false;
                }
            }*/
           String  msg="{\"valid\":"+flg+" }";
            this.toJsonObject(msg);
            
        }catch (Exception e){
            e.printStackTrace();
        }
         
         
        return null;
    }


转载于:https://my.oschina.net/cys21/blog/489491

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值