js部分javascript
/** * 驗證用戶名 */ $.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 : '用戶名已經被佔用' } });
htmlhtml
<tr> <td>用戶名:</td> <td><input id="inputName" class="easyui-textbox" type="text" name="username" data-options="required:true,validType:'userName'"></input></td> </tr>
java部分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,"用戶名被佔用"); } }