在实际的项目中,可能存在这样的情况:我们要通过Ajax访问Action中的某个方法,然后返回一个特定的数值给Ajax,而不是将方法处理结果对应的页面返回给Ajax;这是我们可以用以下的办法来处理:
1、Action 中的方法返回类型为:void,如:
public void getProgressRate() throws UnknownException,IOException
2、struts.xlm配置文件中也不需要配置result,如:
<action name="getProgressRate" class="impToolProductAction" method="getProgressRate">
</action>
3、在Action中将处理结果返回Ajax的代码如下:
HttpServletResponse response = ServletActionContext.getResponse();
response.setCharacterEncoding("UTF-8");
response.getWriter().write(progressRate);// progressRate 是变量
4、通过这种方法在Ajax中就可以获取 progressRate 值了。
分享到:
相关推荐
$.ajax()方法接受一个对象作为参数,该对象包含了一系列配置选项,用于定制AJAX请求的行为。 #### 四、$.ajax()方法配置项解释 1. **url**:(必需) 定义向服务器请求的URL地址。 - 示例代码中的`url: rootPath+"/...
总结来说,JQuery通过`$.post`方法发起Ajax请求,Struts2框架通过配置和Action处理请求,并利用JSON插件将Java对象转换为JSON格式,最后将结果返回给客户端。客户端的回调函数接收到JSON数据后,可以解析并更新页面...
如果你的AJAX请求需要跨域,可以考虑使用JSONP(JSON with Padding)或者CORS(Cross-Origin Resource Sharing)策略。 8. **ASP.NET MVC中的AJAX调用** 在ASP.NET MVC中,我们可以创建一个ActionResult,然后在...
例如,可能有Action的Java文件,包含处理Ajax请求的方法;DAO的Java文件,负责与数据库交互;还有可能是一些配置文件,如Struts的struts.xml,Hibernate的hibernate.cfg.xml以及可能的JavaScript代码。 总的来说,...
2. **创建Action类**:定义一个Struts2 Action类,该类将处理AJAX请求。Action类中的方法通常需要一个`execute`方法,返回一个表示结果的字符串,Struts2会根据这个结果选择合适的Result来展示响应。 ```java ...
在Ajax请求中,JSON通常作为数据传输的载体,因为它可以直接被JavaScript解析成对象。Struts2可以通过配置Action结果类型为json,来输出JSON格式的数据。 具体实现步骤如下: 1. **jQuery发起Ajax请求**:使用...
当Action返回的是XML数据时,我们需要在jQuery.AJAX中指定`dataType: 'xml'`,以便jQuery能正确解析响应。一旦请求成功,`success`回调函数会接收到XML对象,我们可以使用DOM操作或jQuery方法来提取和处理数据。 ...
Action类中定义的方法需要与Ajax请求对应,并且可以返回JSON或其他类型的数据。 3. **Struts2 JSON插件**:为了返回JSON数据,你需要在Struts2的配置文件中启用JSON插件,并在Action类上使用`@Result(name="json", ...
在Struts2中,创建一个名为`Struts2Action.java`的Action类,处理Ajax请求并返回JSON。需要添加Struts2的JSON插件支持,然后定义一个方法,如`execute()`,返回`json`结果类型: ```java @Action(value = ...
当用户触发一个Ajax请求时,JavaScript创建一个XMLHttpRequest实例,然后通过这个实例向服务器发送HTTP请求。服务器处理请求后返回响应,Ajax代码再将这些数据解析并更新DOM(Document Object Model)以改变页面内容...
在长时间运行的Ajax请求中,显示进度条或提供取消操作是提升用户体验的好方法。书中会展示如何实现这些功能,以及如何优雅地处理错误和异常情况。 总之,《Ajax in Action》通过实例代码深入讲解了Ajax技术,涵盖了...
2. **跨域问题**:由于同源策略的限制,Ajax请求通常只能发送到同一域名下。解决跨域的方法有JSONP、CORS(跨源资源共享)等。 3. **错误处理**:需要编写合适的错误处理代码,以应对网络问题、服务器错误或其他...
$.ajax({})是一个jQuery的AJAX请求方法,其方法体中可以设置多个参数来定义AJAX请求的行为。具体参数如下: - cache: 设置为false,防止在请求过程中浏览器缓存结果,确保每次都向服务器请求数据; - async: 设置为...
在Struts2框架中,JSP通常用作展示模板,将Action返回的数据渲染成页面。 5. JSON(JavaScript Object Notation):JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在本例中,JSON...
- **创建Ajax请求**:在JavaScript中,通过XMLHttpRequest对象或者jQuery的`$.ajax()`方法发起Ajax请求。请求的目标URL应指向Struts的Action。 ```javascript var xhr = new XMLHttpRequest(); xhr.open("POST", ...
在这个主题“spring security ajax请求与html共存”中,我们将探讨如何在使用Spring Security的同时处理Ajax(异步JavaScript和XML)请求,并确保与HTML页面的正常交互。 1. **Spring Security基础** Spring ...
6. **错误处理**:在Ajax请求中,正确处理错误情况同样重要。Struts2可以配置全局异常处理,当Action执行出错时,可以返回一个特定的状态码或错误信息。 7. **前端响应处理**:前端收到Ajax响应后,需要解析数据并...
### AJAX调用ACTION返回XML或LIST详解 #### 一、背景与目的 在Web开发领域,前后端交互是实现动态网站的关键技术之一。通常情况下,开发者可能会选择使用JSP + Ajax + Servlet或JSP + Struts2的方式进行开发。然而...
1. **配置Action**:在Struts2中创建一个名为`ProgressAction`的类,该类需要一个方法来处理进度查询请求。返回JSON对象,其中包含当前进度。 ```java public class ProgressAction extends ActionSupport { ...