<%@ page pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><head><meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<title>使用jQuery验证用户名是否存在,达到局部刷新的效果</title>
<script src="${basePath}/js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
//聚焦时触发的事件
$("#loginname").focus(function(){
$("#msg").html("");
});
//点击按钮时触发事件
$("#checkLoginname").click(function(){
var loginname=$("#loginname").val().replace(/\s/g,'');//去除头尾空格
if(loginname==''){
$("#msg").html("用户名不能为空!");
$("#loginname").val("");
return false;
}
if(loginname.length>20){
$("#msg").html("用户名超过长度!");
return false;
}
//使用jQuery提交,回调函数function(data)里返回相应信息:data
$.post("${basePath}/checkloginname.htm?d="+new Date().getTime(), {"member.loginname":loginname}, function(data){
$("#msg").html(data);
});
return false;
});
});
</script>
</head>
<body>
<form method="post" action="${basePath}/registe.htm" id="registeForm" class="validateForm">
<tr>
<td width="30%" align="right">用户名:</td>
<td width="70%">&nbsp;<input type="text" name="member.loginname" id="loginname" class="input" />&nbsp;
<input type="button" value="检查用户名是否可用" class="btn" id="checkLoginname"/>&nbsp;<span id="msg" style="color:red"></span></td>
</tr>
</form>
</body>
</html>

后台action代码:

MemberAction.java

/**
* ClassName: MemberAction.java*/
package com.tjitcast.bbs.web.action.front;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import com.tjitcast.bbs.domain.Member; /**
* 检查会员是否存在的Action类
*
* @author yjd
*/
@Controller("front.memberAction")
@Scope("prototype")
@Namespace("/")
@ParentPackage("struts-default")
public class MemberAction extends BaseAction {
private static final long serialVersionUID = -4631080996625964833L;
private Member member;
/**
* 检查用户名是否已经存在
*/
@Action(value = "checkloginname")
public void checkLoginname() {
Member temp = memberService.get(member.getLoginname());
if (temp != null) {
renderText("用户名已存在,请更换!");
} else {
renderText("恭喜你,这个用户名可用!");
}
}
public void renderText(String text) {
HttpServletResponse response = getResponse();
response.setContentType("text/plain;charset=UTF-8");
try {
response.getWriter().write(text);
response.getWriter().flush();
} catch (IOException e) {
throw new IllegalArgumentException(e); // 把受检异常转换为非受检异常
}
}
public Member getMember() {
return member;
} public void setMember(Member member) {
this.member = member;
}
}

效果如下图:

使用jQuery验证用户名是否存在,达到局部刷新的效果的更多相关文章

  1. jquery使用load开展局部刷新没有效果

    jquery使用load开展局部刷新没有效果   jquery使用load进行局部刷新没有效果我的代码 <html><head><meta charset="u ...

  2. ssh整合问题总结--使用struts2+Ajax+jquery验证用户名是否已被注册

    在用户模块中的用户注册需求上,通常要进行用户名是否已被注册的验证,今天正好写了这个需求,把详细代码和所遇到的问题贴过来.在使用struts2+ajax时候,通常我们会返回json类型的数据,但是像上面 ...

  3. jQuery ajax表单提交实现局部刷新

    jQuery Ajax 异步提交 Form 表单,如果使用 get 请求,注意中文乱码问题,jquery 会先使用 iso8859-1 解码,然后发给服务器,如果使用 post 请求,则直接将中文内容 ...

  4. spring mvc + ajax上传文件,页面局部刷新

    1.点击上传按钮进行如下操作,通过表单名称以及input名称获取相应的值,对于上传的文件,使用.files来获取, 因为包含文件的上传,所以采用FormData的形式来进行数据交互,通过append将 ...

  5. Jquery验证插件 JqueryValidation 动态验证用户名等

    可以参考:http://www.w3cschool.cc/jquery/jquery-plugin-validate.html //form1 验证用户名 $("#form1"). ...

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

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

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

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

  8. jQuery 与 AJAX 实现失去焦点验证用户名是否合格

    JSP页面 <tr onmouseover="currentcolor=this.style.backgroundColor;this.style.backgroundColor='# ...

  9. AJAX与PHP(PHP笔记)--动态验证用户名

    在PHP基础的学习过程中经常会遇到对页面的局部刷新. 比如说,我们在填写用户名的同时,对数据库中的信息进行验证,检查是否充分. 这时就要用到AJAX实现页面的动态加载. 下面例子是简单的PHP与AJA ...

随机推荐

  1. Python Requests库

    背景 Requests is an elegant and simple HTTP library for Python, built for human beings. Requests是一个优雅简 ...

  2. Ubuntu 14.04 配置 Java SE

    首先下载Java SE,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html: 下载后把压缩包拷贝到自定义的目 ...

  3. Java intern()方法

    intern()方法: public String intern() JDK源代码如下图: 返回字符串对象的规范化表示形式. 一个初始时为空的字符串池,它由类 String 私有地维护. 当调用 in ...

  4. WPF ArrangeOverride与MeasureOverride

    1.MeasureOverride  是FrameworkElement.MeasureOverride 方法 当重写在派生类中,单位是对于子元素所需要布局的大小并确定FrameworkElement ...

  5. JMeter的基本介绍和入门

    1. 介绍 JMeter是Apache组织的开放源代码项目,能做功能测试和性能测试.它能够对HTTP和FTP服务器进行压力和性能测试,也可以对任何数据库进行同样的测试(通过JDBC),还能以多种形式展 ...

  6. FC网络学习笔记01

    1.Fibre Channel 也就是“网状通道”的意思,简称FC,可以称其为FC协议.FC网络或FC互联. 2.像TCP/IP一样,FC协议集同样具备TCP/IP协议集以及以太网中的概念,比如FC交 ...

  7. ctkPlugin插件系统实现项目插件式开发

    插件式开发体会: 自开始写[大话QT]系列就开始接触渲染客户端的开发,说是开发不如更多的说是维护以及重构,在接手这块的东西之前自己还有点犹豫,因为之前我一直认为客户端嘛,没什么技术含量,总是想做比较有 ...

  8. JDBC Transaction Management Example---reference

    In this post, we want to talk about JDBC Transactions and how we can manage the operations in a data ...

  9. Java获取真实的IP地址--转载

    // 获取真实IP的方法() public String getIpAddr() { String ip = request.getHeader("x-forwarded-for" ...

  10. j2ee学习笔记 Filter过滤器

    作用:过滤response和request对象的内容 使用: Filter是J2EE的一个接口,自定义Filter需要实现该接口,并重写所有的方法. Filter提供的方法: init() doFil ...