我将实现一个简单的Ajax页面无刷新进行用户验证案例:

效果如下图:
实现主要过程:
在UsersAction类中的checkUser方法中接收并验证前台的表单数据,针对不同情况,返回一个状态码code给jsp页面,然后在ajax1.jsp中通过$.post方法接受后台传递过来的状态码
做出不同的响应。
具体代码如下:
1.实体类
package com.bean;
import java.io.Serializable;
public class Users implements Serializable {
private String uname;
private String passwd;
public String getUname() {
return uname;
}
public void setUname(String uname) {
this.uname = uname;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public Users(String uname, String passwd) {
super();
this.uname = uname;
this.passwd = passwd;
}
public Users() {
super();
}
}
2.action类
package com.action;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import com.bean.Users;
public class UsersAction {
private Users us;
public Users getUs() {
return us;
}
public void setUs(Users us) {
this.us = us;
}
@Action(value="checkUser")
public String checkUser() {
System.out.println("aaaaaaaaa");
HttpServletResponse response = ServletActionContext.getResponse();
response.setCharacterEncoding("utf-8");
try {
PrintWriter out = response.getWriter();
int code = 0;
if (us == null) {
out.print(0);
return null;
} else {
if (us.getUname() == null || us.getUname().trim().equals("")) {
code = 1;
out.print(code);
return null;
} else {
if (us.getPasswd() == null
|| us.getPasswd().trim().equals("")) {
code = 2;
out.print(code);
return null;
} else {
code = 200;
out.print(code);
}
}
}
out.flush();
out.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
3.ajax1.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>" rel="external nofollow" >
<title>Ajax练习</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css" rel="external nofollow" >
-->
<script type="text/javascript" src="js/jquery-1.9.1.js"></script>
<script>
$(function() {
$("#btok").click(function() {
//获取数据
var uname = $("#uname").val();
var passwd = $("#passwd").val();
//将数据组织为json格式
var json = {"us.uname":uname,"us.passwd":passwd};
//进行异步请求
$.post("checkUser.action",json,function(msg){
if(msg == '0') {
alert("用户名和密码错误!");
return;
}
if(msg == '1') {
$("#uerror").html("用户名错误!");
return;
} else {
$("#uerror").html("*");
}
if(msg == '2') {
$("#perror").html("密码错误!");
return;
} else {
$("#perror").html("*");
}
if(msg == '200') {
alert("登陆成功!");
return;
}
});
});
});
</script>
</head>
<body>
<form name="form1" method="post" action="">
<table width="450" border="1" align="center" cellpadding="1" cellspacing="0">
<tr>
<td colspan="2" align="center" valign="middle" bgcolor="#FFFFCC">用户注册</td>
</tr>
<tr>
<td width="88">账号:</td>
<td width="352"><label for="uname"></label>
<input type="text" name="uname" id="uname">
<span id="uerror" style="color:#F06;">*</span></td>
</tr>
<tr>
<td>密码:</td>
<td><label for="passwd"></label>
<input type="password" name="passwd" id="passwd">
<span id="perror" style="color:#F06;">*</span></td>
</tr>
<tr align="center" valign="middle" bgcolor="#FFFFCC">
<td colspan="2"><input type="button" name="button" id="btok" value="确定">
<input type="reset" name="button2" id="button2" value="重置"></td>
</tr>
</table>
</form>
<br>
</body>
</html>
以上所述是小编给大家介绍的Ajax的简单实用实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# ajax
# 简单实例
# 简单的ajax实例
# ajax局部刷新实例 (三种方法推荐)
# Ajax和$.ajax使用实例详解(推荐)
# spring mvc 和ajax异步交互完整实例代码
# ajax与json 获取数据并在前台使用简单实例
# springMVC+ajax实现文件上传且带进度条实例
# 小编
# 在此
# 给大家
# 我将
# 表单
# 所述
# 用户注册
# 给我留言
# 感谢大家
# 如下图
# 类中
# 疑问请
# 有任何
# 实体类
# setUs
# println
# System
# setCharacterEncoding
# utf
# getWriter
相关文章:
北京制作网站的公司,北京铁路集团官方网站?
如何在阿里云虚拟服务器快速搭建网站?
Thinkphp 中 distinct 的用法解析
如何快速搭建安全的FTP站点?
网站制作的步骤包括,正确网址格式怎么写?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
宁波免费建站如何选择可靠模板与平台?
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
如何在建站宝盒中设置产品搜索功能?
建站之星如何助力网站排名飙升?揭秘高效技巧
如何挑选最适合建站的高性能VPS主机?
独立制作一个网站多少钱,建立网站需要花多少钱?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
建站之星代理如何优化在线客服效率?
枣阳网站制作,阳新火车站打的到仙岛湖多少钱?
建站主机服务器选型指南与性能优化方案解析
建站之星如何配置系统实现高效建站?
如何快速搭建响应式可视化网站?
Android自定义控件实现温度旋转按钮效果
网站规划与制作是什么,电子商务网站系统规划的内容及步骤是什么?
高端网站建设与定制开发一站式解决方案 中企动力
如何挑选优质建站一级代理提升网站排名?
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
内部网站制作流程,如何建立公司内部网站?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗
logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
如何设计高效校园网站?
东莞专业制作网站的公司,东莞大学生网的网址是什么?
临沂网站制作公司有哪些,临沂第四中学官网?
已有域名和空间,如何快速搭建网站?
如何确保西部建站助手FTP传输的安全性?
宁波自助建站系统如何快速打造专业企业网站?
建站主机选购指南:核心配置优化与品牌推荐方案
建站主机核心功能解析:服务器选择与网站搭建流程指南
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?
高防服务器如何保障网站安全无虞?
建站主机与服务器功能差异如何区分?
网站制作公司排行榜,抖音怎样做个人官方网站
如何快速生成高效建站系统源代码?
高端建站如何打造兼具美学与转化的品牌官网?
如何解决VPS建站LNMP环境配置常见问题?
教学网站制作软件,学习*后期制作的网站有哪些?
定制建站如何定义?其核心优势是什么?
在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?
股票网站制作软件,网上股票怎么开户?
*请认真填写需求信息,我们会在24小时内与您取得联系。