controller层

@ResponseBody
@RequestMapping(value = "/user/isExist", produces = "application/json")
public boolean isExist(Model model,String userName) { boolean flag = userPrivilegeServiceFacade
.isExistUserName(userName);
if(flag) {
return true;
}
return false;
}

jsp页面

<form:form class="form-horizontal" id="form" method="post" modelAttribute="user"
enctype="multipart/form-data" >
<div class="control-group">
<form:label path="userName" class="control-label">
<spring:message code="system.user.userName" />
</form:label>
<div class="controls">
<form:input path="userName" onblur="checkIsExist();" onfocus="clearCss();" />
<site:required />
<span id="showResult"></span>
<form-extension:errors path="userName" cssClass="error" />
</div>
</div>
</form:form>
<script type="text/javascript">
function checkIsExist() {
var userName = $.trim($("#userName").val());
$.ajax({
type:"POST", //http请求方式
url:"<spring:url value="/system/userprivilege/user/isExist" />", //发送给服务器的url
data:"userName="+userName, //发送给服务器的参数
dataType:"json", //告诉JQUERY返回的数据格式(注意此处数据格式一定要与提交的controller返回的数据格式一致,不然不会调用回调函数complete)
complete:function(msg) {
if (eval("(" + msg.responseText + ")")) {
$("#showResult").html("<font color='red'>用户名已存在</font>");
} else {
$("#showResult").html("");
}
}//定义交互完成,并且服务器正确返回数据时调用回调函数
});
}
function clearCss() {
$("#showResult").html("");
}
</script>

错误的例子(controller层)

@ResponseBody
@RequestMapping(value = "/user/isExist", produces = "application/json")
public boolean isExist(Model model,String userName) { boolean flag = userPrivilegeServiceFacade
.isExistUserName(userName); return flag;
}

优化的例子

controller层

@ResponseBody
@RequestMapping(value = "/user/isExist", produces = "application/json")
public ResultDTO isExist(Model model,String userName) { ResultDTO result = new ResultDTO(); boolean success = userPrivilegeServiceFacade
.isExistUserName(userName); result.setSuccess(success); if(success) {
result.setMessage("<font color='red'>用户名已存在</font>");
} else {
result.setMessage("<font color='green'>用户名合法</font>");
}
return result;
}

domain层

public class ResultDTO implements Serializable{
private static final long serialVersionUID = 1L; private boolean success;
private String message;
public boolean isSuccess() {
return success;
}
public void setSuccess(boolean success) {
this.success = success;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
} }

jsp页面

<script type="text/javascript">

    function checkIsExist() {
var userName = $.trim($("#userName").val());
$.ajax({
type:"POST", //http请求方式
url:"<spring:url value="/system/userprivilege/user/isExist" />", //发送给服务器的url
data:"userName="+userName, //发送给服务器的参数
dataType:"json", //告诉JQUERY返回的数据格式(注意此处数据格式一定要与提交的controller返回的数据格式一致,不然不会调用回调函数complete)
complete : function(msg) {
var result = eval("(" + msg.responseText + ")");
if(result.success) {
$("#showResult").html(result.message);
} else {
$("#showResult").html(result.message);
}
}
});
}
function clearCss() {
$("#showResult").html("");
}
</script>

jquery ajax验证用户名是否存在(后台spring mvc)的更多相关文章

  1. 利用jQuery实现的Ajax 验证用户名是否存在

    异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用jQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...

  2. 基于jQuery实现的Ajax 验证用户名唯一性

    基于jQuery实现的Ajax 验证用户名唯一性 前端jsp页面代码 <tr> <th><span class="requiredField"> ...

  3. 使用ajax验证用户名重复

    继上次的用户注册登录案例之后,对其中的部分功能再做进一步改进.上一版中用户提交表单后才对用户名进行校验,虽然做了回显,但还是感觉功能弱了些.为了能有更好用户体验,不是在用户提交表单后才给提示,而是在用 ...

  4. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  5. ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  6. 14.ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  7. Ajax验证用户名是否被注册

    Ajax验证用户名是否被注册 var xmlHttp; function createXMLHttpRequest(){ // 创建XMLHttp请求对象 if(window.ActiveXObjec ...

  8. 11.10 (下午)开课二个月零六天(ajax验证用户名,ajax调数据库)

    用ajax验证用户名是否可用 testuid.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...

  9. Ajax验证用户名

    用Ajax验证用户名: 接口: get guestbook/index.php m : index a : verifyUserName username : 要验证的用户名 返回 { code : ...

随机推荐

  1. Python数据结构之二叉树

    本来打算一个学期分别用C++.Python.Java实现数据结构,看来要提前了 这个是Python版本,我写的数据结构尽量保持灵活性,本文bt1是一般的插入法建立二叉树结构,bt2就是可以任意输入,至 ...

  2. android的fragment基本介绍

    可以分为下面的几部分: 使用支持库 创建一个Fragment 创建一个动态UI 多个Fragment之间的通信 1.使用支持库 如果您的应用需要运行在3.0及以上的版本,可以忽略这部分内容. 如果您的 ...

  3. 01-UIKit

    目录: 一.视图和控制器 二.interface Builder 回到顶部 一.视图和控制器 1 视图(view)ios程序运行期间用户所能看见的东西都可以认为是视图,比如UIwindow就是一个视图 ...

  4. cocos2d-x2.0 win7第一次创建项目需要调用到的脚本(不断更新维护)//cocos2d-x 教程一

    第一步: 最新的cocos2d-x.下载地址https://github.com/cocos2d/cocos2d-x github上最新的引擎,值得注意的是官网上发布的引擎是稳定版.选择哪种就看个人喜 ...

  5. Blog 转移

    Blog 转移至 http://blog.rapcoder.com CSDN :  http://blog.csdn.net/a542551042 欢迎一起交流 学习 ,谢谢!!!

  6. javascript笔记整理(对象的继承顺序、分类)

    Object.prototype.say=function(){ alert("我是顶层的方法"); } children.prototype=new parent(); pare ...

  7. 基于visual Studio2013解决面试题之1006判断升序

     题目

  8. FastReport 数据过滤

    FastReport 数据过滤 在DataBind 的 OnBeforePrint 设置条件   例:显示 大于0 的数据 procedure MasterData1OnBeforePrint(Sen ...

  9. oracle数据库中insert与select

    前几天遇到了一个问题,insert语句中,不仅要insert页面传过来的值,还要insert select的值. 语句应该这样写: insert into 表1(字段a,字段b,...) select ...

  10. WEB应用如何解决安全退出问题

    让我先来描述一下这个情况.一位用户第一次请求一个web页面,web应用弹出登录窗口提示用户登录,用户输入用户名,密码,验证码后服务器进行判断,正确后,返回用户请求的页面.     此时,用户有事需要离 ...