05.easyui发送同步请求验证用户名重复

js部分


/**
 *  验证用户名
 */
$.extend($.fn.validatebox.defaults.rules, {
    userName : {
        validator : function(value, param) {
            //console.log(value);这里就是用户实时输入的内容
            //获取当前修改项目的id,用于在controller判断,如果有id就是修改,没有就是新增
            var empid = $("#empid").val();
            var haha = "";
            $.ajax({
                type : 'post',
                //false为发送同步请求
                async : false,
                //发送请求的url
                url : '/employee/checkName',
                //发送的数据
                data : {
                    "username" : value,
                    "id":empid
                },
                success : function(data) {
                    haha = data;
                    console.log(data);
                }
            });
            return haha.success;
        },
        message : '用户名已经被占用'
    }
});

html


    用户名:
         

java部分

/**
     *  验证用户名
     * @param username
     * @return
     */
    @RequestMapping("/checkName")
    @ResponseBody
    public AjaxResult checkName(String username,Long id){
        //根据用户输入的用户名取查找
        Employee  employee = employeeService.findByUsername(username);

        //如果id不为null,就证明是修改
        if (id != null) {
            //如果根据id查找的用户名和传入的用户名不一致,就进行
            if (employeeService.findById(id).getUsername().equals(username)){
                return new AjaxResult();
            }
        }

        //否则,id为null
        //如果查到的对象为null,说明该用户不存在,那么名字就可使用
        if (employee == null) {
            return new AjaxResult();//如果没有查到对象,用户名可以使用
        }else {
            return new AjaxResult(false,"用户名被占用");
        }
    }

你可能感兴趣的:(java,javascript,jquery,html,html5)