前台页面:
encodeURI(encodeURI(val)) // jsp页面中对参数要进行两次编码 function validate(val){ var req = new XMLHttpRequest(); req.open("get", "role/validate?rolename="+encodeURI(encodeURI(val))+"&date="+new Date(), true); req.send(); req.onreadystatechange = function(){ if(req.status=="200" && req.readyState == "4"){ if(req.responseText=="ok"){ document.getElementById("nameTip").innerHTML = "<font color='green'>角色名可以使用</font>"; }else if(req.responseText=="no"){ document.getElementById("nameTip").innerHTML = "<font color='red'>角色名已存在</font>"; } } } }后台:
rolename = URLDecoder.decode(rolename, "utf-8");//后台程序对传递过来的参数进行解码处理 @RequestMapping("/validate") @ResponseBody public String validate(String rolename){ try { rolename = URLDecoder.decode(rolename, "utf-8"); } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("-------------->" + rolename +"<---------------"); Rolebean role = roleService.queryByRolename(rolename); if(role != null){ return "no"; }else{ return "ok"; } }