SSH+Ajax实现用户名重复检查(一)
1、struts.xml设置
<package name="default" namespace="/" extends="json-default"><!--用ajax要此extends-->
<action name="userJSON_checkname" class="ssh.action.UserAction" method="checkName" >
<result type="json">
<!-- root的值对应要返回的值的属性,这里的result值即是 对应action中的属性result,也即ajax中的返回值data -->
<param name="root">checkresult</param>
</result>
</action>
</package>
2、html和js,在需要提交的form页面中包含两个js文件,jquery.js(随便下载一个版本)和username_check.js(如下)
<form id="tea_reg" method="post" name="tea_reg" >
用户名<input name="user.User_LogName" type="text"id="user.User_LogName"size="20" maxlength="255" />
<label id="message">验证用户名</label>
</form>
var user = {
inintEvent: function(){
$("input[name='user.User_LogName']").unbind("blur"); /*移动开输入框的时候就会响应,user.User_LogName为输入框的名字*/
$("input[name='user.User_LogName']").bind("blur", function(){
user.checkUser($(this).val());
});
},
checkUser:function(logname){
var parameter = {
logname:logname/*入参,为什么用这样表示,形参:实参?*/
};
$.post("userJSON_checkname.action",parameter,function(data){ /*userJSON_checkname为action的名字*/
/*这里的参数date就是在struct.xml里面定义的参数checkresult,也即action的一个属性值*/
if(data=="ok"){
$("#message").text("该用户名可用");
$("#message").css("color","blue");
}else{
$("#message").text("该用户名不可用");
$("#message").css("color","red");
}
});
}
};
/*启动页面的时候绑定动作绑定*/
$(document).ready(function(){
user.inintEvent(); /*绑定到用户名输入框*/
});
3、action部分,在UserAction类中添加如下代码
public String logname;
public String checkresult;
public String getcheckresult() {/*名字要一致,用于返回数据*/
return this.checkresult;
} public void setlogname(String logname) /*名字要一致,会自动获取传递过来的参数logname*/
{
this.logname = logname;
}
public String getlogname()
{
return this.logname;
}
public String checkName(){
User tmp;
tmp = userservice.findUserByName(logname);/*userservice的具体方法根据自己的项目设置定义,这已经与ajax无关了*/
if(null !=tmp )
{this.checkresult = "err";/*最终要返回的值,浏览器自动获取*/
}
else
{
this.checkresult = "ok";
} return SUCCESS;
}
4、实现调试,在chrome中查看提交和返回的结果


SSH+Ajax实现用户名重复检查(一)的更多相关文章
- SSH+Ajax实现用户名重复检查(二)
1.另外一种更常用的js表达方式: var user = { inintEvent: function(){ $("input[name='user.User_LogName']" ...
- 使用原生Ajax进行用户名重复的检验
title: 使用原生Ajax进行用户名重复的检验(一) date: 2019-01-21 17:35:15 tags: [JavaScript,Ajax] --- Ajax的复习 距离刚开始学aja ...
- 使用ajax验证用户名重复
继上次的用户注册登录案例之后,对其中的部分功能再做进一步改进.上一版中用户提交表单后才对用户名进行校验,虽然做了回显,但还是感觉功能弱了些.为了能有更好用户体验,不是在用户提交表单后才给提示,而是在用 ...
- SSH网上商城---使用ajax完成用户名是否存在异步校验
小伙伴在上网的时候,需要下载或者观看某些视频资料,更或者是在逛淘宝的时候,我们都需要注册一个用户,当我们填写好各种信息,点击确定的时候,提示用户名已经存在,小编就想,为什么当我们填写完用户名的时候,她 ...
- Ajax检测用户名是否已经注册
程序功能 当用户名输入完成(即用户名输入框失去焦点),利用Ajax检测用户名是否已经注册! 实现过程 利用Ajax向CheckUserServlet发送请求,判断该用户名是否可用.这里只是为了演示Aj ...
- Ajax验证用户名是否被注册
Ajax验证用户名是否被注册 var xmlHttp; function createXMLHttpRequest(){ // 创建XMLHttp请求对象 if(window.ActiveXObjec ...
- JS判定注册表单的几个方式 及 Ajax进行用户名存在判定
最近感觉不赶紧把代码逻辑记一下梳理一下,再做的时候就容易进入"逻辑误区". 有个表单,简单点. <!DOCTYPE html> <!-- 注册表单验证,用户名格式 ...
- 使用AJAX实现用户名的唯一性校验(注册界面)-JAVA(新手)
(1)实现用户名的唯一性校验 所需要准备的: Servlet 注册界面的JSP 接口和实现类 所需要的接口和实现类: 接口: /* * 用户注册 * 账号的唯一性校验,需要传参(username) * ...
- 案例1.用Ajax实现用户名的校验
用Ajax实现用户名的校验 java的验证类 public class UserDao { public boolean checkUserName(String name) { //这里的name是 ...
随机推荐
- sqlninja 说明 (转)
首先来介绍一下sqlninja的优点. 一个专门针对Microsoft SQL Server的sql注入工具 可找到远程SQL服务器的标志和特征(版本.用户执行的查询.用户特权.xp_cmdshell ...
- ios 说一说UINavigationController 的堆栈
iOS的界面堆栈管理比android的要好用很多. 这里写两点:一点是 如何重回前面的vc,而不是push一个alloc的新界面.第二点就是判断当前堆栈显示的vc是何vc. vc堆栈: vc1-> ...
- C++Vector使用方法
C++内置的数组支持容器的机制,可是它不支持容器抽象的语义.要解决此问题我们自己实现这种类.在标准C++中,用容器向量(vector)实现.容器向量也是一个类模板.标准库vector类型使用须要的头文 ...
- 【转】linux中的cut/tr/join/split/xargs命令
1. cut命令 cut命令用于从文件或者标准输入中读取内容并截取每一行的特定部分并送到标准输出. 截取的方式有三种:一是按照字符位置,二是按照字节位置,三是使用一个分隔符将一行分割成多个field, ...
- Codeforces Round #323 (Div. 2) C. GCD Table 暴力
C. GCD Table Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/583/problem/C ...
- 配置Ubuntu开发环境
前言 新买了一台ThinkPad E431,主要看中了硬盘500G和7200转/分钟的速度,因此准备从x220上把工作环境迁移到新买的笔记本上. 为什么不要公司的电脑,是由于160G的ssd硬盘实在是 ...
- [Practical Git] Configure global settings with git config
You can set up global "git config" settings that apply to all git projects on your system. ...
- 代理模式及其在spring与struts2中的体现
代理模式 代理模式有三个角色组成: 1.抽象主题角色:声明了真实主题和代理主题的共同接口. 2.代理主题角色:内部包含对真实主题的引用,并且提供和真实主题角色相同的接口. 3.真实主题角色:定义真实的 ...
- Hibernate初级
文章来源: http://blog.csdn.net/jiuqiyuliang/article/details/39078749/ 持久化(Persistence),把数据(如内存中的对象)保存到可永 ...
- XStream将xml文件拼成字符串
1.引入的包 <dependency> <groupId>com.thoughtworks.xstream</groupId> <artifactId&g ...