首先看下面的一个简单的Dwr应用,在调用回调函数前声明一个boolean变量,而findByOpera函数的作用是根据operaId查询iteminfo表有没有引用这个opera,也就是查看opera有没有所属的iteminfo,返回值是boolean类型。
var hasIteminfo = false ;
iteminfoService.findByOpera(operaId,function(result){
hasIteminfo = result ;
});
alert(hasIteminfo);
如果按照上面的写法的话,由于是异步处理,所以当还没有将返回值result赋给hasIteminfo就已经执行到了alert语句,因此,不论回调函数返回的是true or false,提示的都是之前的默认值,也就是false。
为了能在赋值后再执行提示信息,所以将其设置为同步,使用DWREngine.setAsync(false); 就可以等待赋值后再执行提示语句
var hasIteminfo = false ;
DWREngine.setAsync(false);
iteminfoService.findByOpera(operaId,function(result){
hasIteminfo = result ;
});
DWREngine.setAsync(true);
alert(hasIteminfo);
我们在调用回调方法前将其设置为同步方式,调用结束后恢复为异步方式。这样的话提示的信息就是回调函数返回的值了。
不过建议尽量使用异步方式,原因就不说了,大家都懂得。
分享到:
相关推荐
通过DWR,开发者可以在不涉及繁琐的AJAX请求和响应处理的情况下,直接在JavaScript中调用Java对象的方法,使得前端和后端的通信变得更为便捷。 **整合SpringBoot与DWR** 1. **添加依赖**:在SpringBoot项目的`pom....
`engine.js`是DWR的核心脚本,它实现了JavaScript和Java之间的远程调用(Remote Procedure Calls, RPC)。这个文件处理了请求的发送、响应的接收以及结果的处理。通过`engine.js`,前端开发者可以轻松地创建Java对象...
DWR(Direct Web Remoting)是一种Java库,它允许JavaScript在客户端与服务器端进行直接的交互,从而实现在Web应用程序中的Ajax功能。DWR的主要目标是简化前后端的数据交换,提高用户体验,使得Web应用能够像桌面...
在开发过程中,如果不想去dwr.jar中寻找这些文件,可以直接下载这个压缩包,这样就可以快速地在项目中引入DWR的功能,实现前后端的高效通信。记住,引入DWR后,还需要正确配置Web应用的`web.xml` 文件以及服务器端的...
Ext JS和Direct Web Remoting (DWR) 是两种在Web开发中用于构建富客户端应用程序的技术。它们结合使用,可以创建动态、交互性强的用户界面,同时利用Java后端的强大功能。下面将详细介绍这两种技术以及它们如何协同...
"engine.js"是DWR的客户端引擎文件,它包含了一组JavaScript库,使得在浏览器中可以轻松地调用服务器端的Java方法。这个文件应该被包含在Web页面中,以便Web应用能够利用DWR的功能。`engine.js`提供了诸如对象转换、...
dwr包.rar dwr.jar engine.js util.js dwr-noncla.jar readme.txt JAR File: dwr.jar (1.08Mb) To DWR enable your web-app WAR File: dwr.war (4.62Mb) Demos/Examples of what DWR can do Sources: dwr-...
`util.js` 和 `engine.js` 是DWR的核心JavaScript库。`util.js` 提供了一系列实用工具函数,用于辅助JavaScript编程,例如类型检查、对象遍历等。`engine.js` 是DWR引擎的核心,负责处理与服务器的通信,包括请求的...
Direct Web Remoting (DWR) 是一个开源的Java库,它允许JavaScript在浏览器和服务器之间进行交互,从而实现Ajax(Asynchronous JavaScript and XML)应用程序。DWR 3.0是该框架的一个版本,提供了增强的功能和性能...
DWR的主要目标是简化AJAX(Asynchronous JavaScript and XML)开发,使得开发者能够轻松地在浏览器中调用服务器上的Java方法,就像调用本地JavaScript函数一样。这个技术极大地提升了用户体验,因为数据可以在不刷新...
- **动态页面更新**:利用DWR和`util.js`,开发者可以在不刷新页面的情况下更新内容,提高用户体验。 - **表单验证**:`util.js`提供的验证工具可以帮助开发者实现客户端的表单验证,减少无效的服务器请求。 - **...
这个“js dwr框架jar包”包含了运行DWR框架所需的Java类库,使得前端JavaScript能够调用后端Java方法,实现动态更新网页而无需刷新整个页面。 DWR的核心特性包括: 1. **反向Ajax(Reverse Ajax)**:DWR允许...
#### DWR中的JavaScript - **简单的回调函数**:介绍如何使用DWR进行异步调用,并在调用完成后执行回调函数。 - **调用元数据对象**:元数据对象包含关于服务和方法的信息,可以用来动态生成客户端调用代码。 DWR...
标题中的"DwrEngine.js"和"DwrUtil.js"是DWR的核心JavaScript库文件。`DwrEngine.js`提供了与服务器通信的主要接口,实现了AJAX调用的底层逻辑,包括异步请求的发送、响应的处理以及错误管理等。`DwrUtil.js`则是...
DWR(Direct Web Remoting)是一种Java库,用于在Web应用程序中实现JavaScript和服务器端Java代码之间的双向通信。DWR允许开发者在不刷新整个页面的情况下更新网页部分,从而提供了类似于桌面应用的用户体验。这个...
DWR(Direct Web Remoting)是一种Java库,用于在Web应用程序中实现实时的、双向的JavaScript和服务器端代码交互。这个技术允许开发者在客户端浏览器上执行服务器端的方法,就像它们是本地JavaScript函数一样,极大...
dwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwr
dwr框架中提供的engine.js的源码。
DWR的出现极大地简化了Web应用中的AJAX(Asynchronous JavaScript and XML)开发,因为它无需编写XML,而是直接使用JSON或者JavaScript对象进行数据交换。 在“dwr推送及js访问java代码”的项目中,我们可以看到...