`

Play框架中的Ajax

阅读更多
h1. Ajax in the Play framework



Play框架允许你简单的使用Ajax请求,默认使用JQuery,

这一节描述了如何有效地在框架里使用jQuery。

The Play framework allows you to easily perform Ajax requests, and is shipped with "jQuery":http://jquery.com by default.

This section describes how to effectively use "jQuery":http://jquery.com within the framework.



Plya也提供了jsAction标签透明的从控制器得到一个定义的方法。

The Play framework also comes with the handy **jsAction** tag to transparently get a method definition from the controller.



使用jQuery和jsAction标签

h2. <a>Using jQuery with the jsAction tag</a>



jsAction标签返回一个Javascript函数,它基于服务端的action构建了一个URL,没有参数,它不完成Ajax请求,这些需要手动的使用返回的URL完成。

The #{jsAction /} tag returns a JavaScript function which constructs a URL based on a server action and free variables. It does not perform an AJAX request; these have to be done by hand using the returned URL.



让我们看个例子。

Let's see an example:



bc. GET     /hotels/list        Hotels.list



现在你可以在客户端导入这个route

Now you can import this route client side:



bc. <script type="text/javascript">

   var listAction = #{jsAction @list(':search', ':size', ':page') /}

   $('#result').load(listAction({search: 'x', size: '10', page: '1'}), function() {

       $('#content').css('visibility', 'visible')

   })

</script>



在这个例子中我们从默认的应用控制器中请求list方法,我们传了3个参数,search,size和page,

请求的结果被保存在了listAction变量中,现在我们使用jQuery的load方法发出则个请求(一个HTTP GET请求)。

In this example we are requesting the list method from the default Application controller. We are also passing three parameters: search, size and page. The request we perform is then saved into the listAction variable. Now using jQuery and the **load** function we are performing a request (an HTTP GET request in fact).



实际上,发送的是下面的这个请求。

In fact, the following request is sent:



bc. GET /hotels/list?search=x&size=10&page=1



请求返回的是HTML数据。

In that case the request returns HTML data.



但是也可以返回JSON数据或XML数据,然后让JQuery解释这些数据,在你的控制器中,使用恰单的render方法即可。

However, it is also possible to return JSON or XML and to have jQuery interpret the data. In your controller, use the appropriate render method (renderJSON, renderXML or an XML template).



请参考jQuery的文档去获得更多的信息。

Please refer to the "jQuery":http://docs.jquery.com/Main_Page documentation for more info.



需要注意的是我们还可以使用POST方法,那么相应的jQuery方法应该被改为:

Also please note that we could perform a POST; the jQuery method should then be changed to:



bc. $.post(listAction, function(data) {

  $('.result').html(data);

});
分享到:
评论

相关推荐

    play 框架使用ajax的例子

    在本教程中,我们将深入探讨如何在Play框架中使用AJAX来实现异步数据通信。 首先,了解AJAX(Asynchronous JavaScript and XML)的核心概念。AJAX允许我们在不刷新整个页面的情况下与服务器交换数据并更新部分网页...

    play framework框架教程

    #### 五、Play框架中的Ajax Play框架内置了对AJAX的支持,这意味着开发者可以轻松地在前端使用JavaScript发起异步请求并与服务器端进行交互。Play提供了多种方式来处理AJAX请求,包括JSON响应格式的支持。 **示例*...

    Play framework框架

    Play Framework框架自动编译Java源代码,然后直接热加载到JVM中而不需要重启服务器,使得开发效率大大提高。 二、Play Framework框架的设计理念 Play Framework框架的设计理念是基于“敏捷软件开发”的思想,旨在...

    play framework测试项目

    此外,由于Play框架对Ajax的友好支持,开发者可以轻松实现页面的部分刷新,提升用户体验。 "yabe"这个文件名可能是项目的简称或别名,具体含义可能需要查看项目源代码才能明确。通常,一个Play项目会包含以下主要...

    ajaxFileUpload:使用 Ajax 在 Play 框架中上传文件

    下面将详细介绍如何在Play框架中使用Ajax进行文件上传,以及涉及到的相关技术。 **一、Ajax上传文件的优势** 1. **非刷新页面**:传统的文件上传需要用户提交整个表单,导致页面刷新,而Ajax上传可以保持页面状态...

    Play_Framework_框架教程.pdf

    Play框架能够自动编译Java源代码,并实现热加载到JVM中,这意味着开发人员在不重启服务器的情况下,可以实时看到代码修改的结果。这一特性极大地提升了开发效率,使得开发者能够拥有类似在LAMP或者Rails环境中的开发...

    Ajax里jQuery的ajax与ssh集成

    在后端,SSH框架如Spring MVC、Struts2或Play Framework等,会处理这些Ajax请求并返回响应。SSH框架提供了模型-视图-控制器(MVC)架构,使得开发者可以更有序地组织代码。例如,在Spring MVC中,我们可以创建一个...

    java play 项目

    下面将详细讨论Java Play框架、Java编程、jQuery及其在Web开发中的应用,以及可能涉及的`js文档`、`jsonView`和`financeMarket`等组件。 1. **Java Play框架**: - **简介**:Java Play框架采用MVC(模型-视图-...

    play框架手册

    11.在play框架里使用Ajax - 94 - 通过jsAction标签使用jQuery - 95 - 12. Internationalization国际化支持 - 96 - 仅使用 UTF-8! - 96 - 国际化你的信息 - 96 - 通过应用程序定义支持的语言 - 96 - 依照你的区域定义...

    BootstrapModalDialog:使用 Bootstrap 模态对话框和 AJAX 的 Play 1.2.7 示例

    BootstrapModalDialog 是一个基于 Play 1.2.7 框架和 Bootstrap UI 库的示例项目,展示了如何在 Web 应用程序中利用模态对话框进行 AJAX 交互。Bootstrap 是一个流行的前端开发框架,它提供了丰富的 UI 组件,包括...

    java web框架开发技术

    Struts2 框架的主要特点是支持 Ajax、支持多种类型的数据源、支持国际化和本地化等。 三、实验项目的设置 实验项目的设置包括硬件环境和软件环境。硬件环境包括 PC 机,软件环境包括 MyEclipse 8.0 GA、MySQL 5.0...

    java结合ajax技术

    在Java中,我们通常使用Servlet、JSP、Spring MVC或者Play Framework等框架来处理Ajax请求。服务器接收到请求后,执行相应的业务逻辑,如数据库查询、计算等,然后将结果以JSON或XML格式返回。JSON(JavaScript ...

    ajax经典特效与JAVA完美结合

    在Java后端,我们可以使用诸如Spring MVC、Struts2或Play Framework等MVC框架来处理AJAX请求。这些框架提供了一种简单的方式来处理JSON或XML数据,这是AJAX交互中常见的数据格式。例如,当前端发送一个AJAX请求时,...

    ASP.NET 毕业项目 源码 PPT AJAX

    项目中的"Go2play"可能是应用程序的一个模块或功能名称,比如一个在线游戏平台。在这个模块中,可能包含用户注册、登录、游戏列表、游戏详情、排行榜等功能。ASP.NET的内置身份验证和授权机制可以用来保护用户数据和...

    play-java-intro

    在Java开发中,Play框架提供了一个轻量级、高性能的环境,支持异步I/O和HTTP/2,能快速构建现代Web应用。 **Angular.js** Angular.js是Google维护的一个JavaScript框架,用于构建单页应用(SPA)。它提供了双向...

    利用AJAX.Java.技术建立高流量的即时双向沟通网站

    6. **Java后端框架**:Spring、Struts或Play等Java框架简化了开发过程。学习如何配置这些框架以处理AJAX请求,以及如何返回JSON响应。 7. **Servlet与JSP**:理解Servlet和JSP的基础知识,它们是Java Web开发中的...

    框架笔试-tang.docx

    12. Ajax:有两个文本框,他们中间有一个下拉框,下拉框中有加减乘除,在两个文本框中输入数字,选择下拉框中的运算方式,计算出结果。 这个问题可以使用 Ajax 和 JavaScript 来实现,步骤包括: * 创建两个文本框...

    Play-Backbone-Kickstarter:如何以最佳方式集成 Play 和 Backbone

    7. **前端与后端通信**: 使用 AJAX 或 Fetch API 跨域请求 Play 提供的 API,获取或提交数据。注意配置 Play 的 CORS 政策,允许前端进行跨域请求。 8. **部署与测试**: 部署 Play 项目到服务器,确保前端和后端能...

    Ajax 与JAVA网络的参考手册【经典老资源】

    Spring MVC、Struts2 或 Play Framework 等框架提供了对 Ajax 支持。在 Java 中,通常会创建一个 RESTful API 接口,返回 JSON 数据,供前端的 JavaScript 调用。 例如,使用 Spring MVC 创建一个简单的 REST 接口...

    马克斯去播放器框架

    play.html是压缩包中的关键文件,它很可能是新框架的核心界面文件,包含着播放器的用户界面和交互逻辑。HTML文件通常包含了网页的结构和内容,而播放器相关的功能可能通过JavaScript脚本实现,与HTML元素进行交互,...

Global site tag (gtag.js) - Google Analytics