这次遇到问题,问题阐述如下:
想通过ajax的异步传输,在用户注册页面,当用户输入用户名后显示该用户的可用与否,此处用到struts2,ajax的request对象把url转向action,通过action与数据库交互,判断用户名是否可用。
遇到了action中如何返回需要的提示信息的问题,我是这样解决的,通过建立相应的jsp页面来显示提示内容,代码贴上,口述看者模糊。
jsp页面
<script language="javascript">
var http_request = false;
function t1(){
var userName = document.all("um.userName").value;
//alert(userName);
//ajax开始-----------------------------
//1:创建对象
myRequest = new ActiveXObject("Microsoft.XMLHTTP");
//2:给该对象注册事件,当对象的状态改变时,调用后面的回调方法
//alert(myRequest.readyState);
myRequest.onreadystatechange = t2;
//3:设置请求方式、目标url以及是否异步交互,其中true表示异步
myRequest.open("GET","/s2/user/myAction?uwm.submitFlag=toAdd&um.userName="+userName,true);
//4:
myRequest.send(null);
}
function t2(){
//alert(myRequest.readyState);
if(myRequest.readyState==4){
//如果交互完成
//alert(myRequest.status);
if(myRequest.status==200){
//并且交互成功
//取得服务端返回的信息
var retVal = myRequest.responseText;
//ajax结束-----------------------------
//alert(retVal);
//后续处理
document.all("myspan").innerHTML=retVal;
}
}
}
</script>
<body>
<form name="add" action="/s2/user/myAction.action?uwm.submitFlag=add" method="post">
<table align="center">
<tr>
<td colspan="2"><font size="+1" color="#ff00ss">添加用户</font></td>
</tr>
<tr>
<td>用户姓名:</td>
<td><input type="text" name="um.userName" onblur="t1()"/><font color="red">*<span id="myspan"></span></font></td>
</tr>
action中的代码如下:
public String execute() throws Exception {
String submitFlag = uwm.getSubmitFlag();
//System.out.println(submitFlag);
if(submitFlag!=null){
if("toAdd".equals(submitFlag)){
return toAdd();
}
}
private String toAdd() throws IOException {
String userName = um.getUserName();
qum.setUserName(userName);
Collection col = UserServiceFactory.getUserService().getUserByCondition(qum);
if(col.size()==0){
return "yes";
}else{
return "no";
}
}
struts.xml
<result name="yes">/pages/yes.jsp</result>
<result name="no">/pages/no.jsp</result>
相应两个跳转的页面的内容:
恭喜,此用户名可用!//yes.jsp
sorry,此用户名已存在,请重新输入!//no.jsp
此处用jsp页面装载提示信息个人觉得不是解决的好办法,学的不够深入,在Servlet中,是不存在这种情况的,直接用PrintWriter 输出相应的提示信息,通过jsp页面的 request.responseText即可获取到相应的提示。
分享到:
相关推荐
《jQuery小试牛刀》 在Web开发领域,jQuery是一个不可或缺的JavaScript库,它极大地简化了DOM操作、事件处理、动画效果以及Ajax交互等任务。本文将深入探讨jQuery的核心概念和常见用法,帮助读者更好地理解和运用这...
依照顺序把下载的压缩包改成名字才可以解包 ASP.NET AJAX 程序设计 第二卷.part1 .rar ASP.NET AJAX 程序设计 第二卷.part2 .rar ASP.NET AJAX 程序设计 第二卷.part3 .rar ASP.NET AJAX 程序设计 第二卷.part4 .rar...
在"JavaScript语言与Ajax应用(第二版)"这本书中,作者董宁深入探讨了这两者的核心概念和技术应用。 1. **JavaScript基础**:JavaScript语言的基础包括变量、数据类型、运算符、流程控制(条件语句、循环语句)、...
《AJAX高级程序设计第二版》是一本深入探讨AJAX技术的专业书籍,旨在帮助开发者提升在Web开发中的AJAX应用水平。AJAX,全称Asynchronous JavaScript and XML(异步JavaScript与XML),是一种创建动态网页的技术,...
《疯狂Ajax讲义源码(第二版)》是一份针对Web开发中Ajax技术的深入学习资料,主要聚焦于JavaScript和服务器端交互的核心技术。Ajax,全称Asynchronous JavaScript and XML,是一种在无需重新加载整个网页的情况下,...
ASP.NET.Ajax程序设计第2卷(客户端)
2. AJAX实例AJAX可以用来创建更多交互式的网络应用程序。3. AJAX源代码简要分析上一章节效果的代码原理4. AJAX与数据库AJAX可以用来和数据端进行数据的交互联通。5. 使用AJAX制作留言本使用已有的AJAX教程,制作一个...
AJAX AJAX AJAX AJAX AJAX AJAX AJAX AJAX AJAX
掌握 Ajax第 2 部分-使用 JavaScript 和 Ajax 发出异步请求 掌握 Ajax第 3 部分-Ajax 中的高级请求和响应 掌握 Ajax第 4 部分-利用 DOM 进行 Web 响应 掌握 Ajax第 5 部分-操纵 DOM 掌握 Ajax第 6 部分-建立基于 DOM...
**第二章:数据格式** Ajax传输的数据可以是XML、JSON、HTML等多种格式。本章将深入探讨XML和JSON,它们在Ajax中的角色,以及如何在JavaScript中解析和生成这些格式的数据。同时,也会对比两种格式的优缺点,帮助...
Ajax存在问题就是在异步情况下无法控制什么时候完成记录显示,本人根据回调方法封装了个类,能够将回调方法用参数方式指定,使ajax调用结束后调用回调方法,吧内容传回。ajaxSubmitToDivCallback(显示内容div,提交...
2. **第二章:创建第一个Ajax请求** - XMLHttpRequest对象的使用 - GET和POST请求的发送 - 异步处理与回调函数 3. **第三章:处理响应** - 解析XML和JSON数据 - DOM操作与动态内容插入 - 错误处理和状态监测 ...
微软也意识到了这个问题,因此它也开始在AJAX领域奋起直追,比如说推出它自己的AJAX框架Atlas,并且在.NET 2.0也提供了一个用来实现异步回调的接口,即ICallBack接口。 AJAX技术的原理、意义和发展趋势都是我们需要...
2. **事件处理**:库内部监听`ajaxStart`、`ajaxSend`、`ajaxSuccess`、`ajaxError`等事件,提供了对Ajax请求生命周期的控制。开发者可以通过自定义事件处理器来扩展功能或处理错误。 3. **内容替换**:默认情况下...
ASP.NET Ajax程序设计 第II卷 pdf版 还是热乎着的呢 第2部 这只是基本的一部分.其它部分在这里都可以找到
2. **XMLHttpRequest对象**:是Ajax的核心,它允许JavaScript在不刷新整个页面的情况下与服务器进行通信。通过这个对象,我们可以发送HTTP请求并接收响应,实现数据的获取和更新。 3. **DOM(Document Object Model...
第 2 部分:: 使用 JavaScript 和 Ajax 发出异步请求 第 3 部分: Ajax 中的高级请求和响应 第 4 部分: 利用 DOM 进行 Web 响应 第 5 部分: 操纵 DOM 第 6 部分: 建立基于 DOM 的 Web 应用程序 第 7 部分: 在请求和...
《疯狂Ajax讲义:Prototype/jQuery+DWR+Spring+Hibernate整合开发》本书是《基于j2ee的ajax宝典》的第二版。《基于J2EE的Ajax宝典》面市近2年,作为Ajax领域最全面、实用的图书,一直深受读者的好评。全书主要分为三...
7. **MVC和AJAX**:如果第二卷涉及到ASP.NET MVC框架,那么会探讨在MVC模式下如何更好地结合AJAX进行开发。 通过阅读这本书,开发者不仅能掌握ASP.NET AJAX的基本原理和使用方法,还能学习到如何构建高效、用户体验...