`
topcloud
  • 浏览: 8237 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

使用DWR,不能取值的奇怪问题

阅读更多
Javascript代码:
 

  1. <script type=< span="">"text/javascript">  
  2. /** 
  3. *  保存信息 
  4. */  
  5. function saveUpline(){  
  6.     var formObj = dwr.util.getFormValues("editForm");  
  7.     var prefix='upline.';  
  8.     var entityObj =form2entity(formObj,prefix);  
  9.     UplineService.save(entityObj,fillUpline);  
  10. }  
  11.   
  12. /** 
  13. *  填充表单数据 
  14. */  
  15. function fillUpline(upline){  
  16.     var prefix='upline.';  
  17.     var formObj =entity2form(upline,prefix);  
  18.     dwr.util.setValues(upline);  
  19. }  
  20.   
  21. /** 
  22. *   
  23. **/  
  24. function selectContact(url){  
  25.     //判断ID是否为空,ID = 空:新建;ID != 非空:编辑  
  26.     //新建时就先保存信息到数据库  
  27.     var idStr=DWRUtil.getValue("upline.id");  
  28.     if(idStr==null || idStr.length<=0){  
  29.         //给必需输入项设定初始值  
  30.         DWRUtil.setValue("upline.name","新建上线信息");  
  31.         //保存上线信息  
  32.         saveUpline();  
  33.     } 
  34.     //使用此语句就可以取到值,不使用就取不到值,延时处理也不可以。
  35.     //alert(DWRUtil.getValue("upline.id"));
  36.     idStr=DWRUtil.getValue("upline.id");  
  37.     ...............
  38. }  
  39. </script>


JSP代码
<s:textfield name="upline.id" label="Id">
 
  1. <s:textfield label="Id" name="upline.id" />  

</s:textfield>
---------------------------------------------------------------------------------------------------------------------------------------------------------

如果是编辑,【upline.id】textfield有值一切正常,
如果是新建,通过fillUpline回调函数给【upline.id】textfield设定值后通过我标记红的那个语句获取就获取不到。
         
fillUpline回调函数执行后可以看到【upline.id】textfield已经设定值了。奇怪的很!添加个alert验证是空值,
         但是下面的语句就可以取到值了。

saveUpline,和fillUpline函数可以确定执行正常,这是怎么回事呀!

分享到:
评论
4 楼 fangzhouxing 2007-09-05  
我们用下面的形式执行同步操作,代码更加简洁:
var result;
		SysFacade.getSysConfig( {
			callback : function(retValue) {
				result = retValue;
			},
			async : false
		});
3 楼 topcloud 2007-09-05  
感谢fangzhouxing!

在调用DWR前添加如下代码:
//设定DWR同步执行
DWREngine.setAsync(false);

在调用DWR后添加如下代码:
//设定DWR异步执行
DWREngine.setAsync(true);

问题解决!
2 楼 fangzhouxing 2007-09-03  
问题原因是你没有意识到DWR是异步调用.
1 楼 topcloud 2007-09-03  
暂时没有办法,就添加一个alert!
虽然有损用户体验,无奈之举呀。

相关推荐

    DWR 视频教程 使用DWR开发AJAX For JavaEE

    8. **集成与调试**:理解如何将DWR与其他前端框架(如jQuery或AngularJS)集成,并使用DWR的内置调试工具进行问题排查。 9. **实战项目**:“[浪曦原创]零散视频三 使用DWR开发AJAX For J2EE(JustCode).wrf”可能是...

    DWR使用方法-step by step

    ### DWR使用方法详解:逐步指南 #### 一、引言 DWR(Direct Web Remoting)是一种简化Ajax开发的框架,它允许在浏览器端直接调用服务器端的方法,如同调用本地对象一样简单。本篇文章将从安装DWR、配置相关文件到...

    dwr demo dwr简单使用

    9. **安全考虑**:在实际项目中,使用DWR时需要注意安全性问题。暴露给JavaScript的服务器端方法可能会引发安全风险,因此需要谨慎设置DWR的访问权限,避免敏感数据和操作被不授权的用户调用。 通过这个简单的DWR...

    DWR技术文档、快速使用DWR、java技术

    2. **安全机制**:DWR内置了安全机制,如JavaScript白名单、请求签名等,以防止跨站脚本攻击(Cross-Site Scripting,XSS)和其他潜在的安全问题。 3. **缓存管理**:DWR支持客户端缓存,可以优化多次调用相同方法...

    DWR的使用方法

    通过理解其核心组件、安装配置、创建远程接口、配置DWR以及使用JavaScript API,你就能在自己的项目中有效地利用DWR实现高效、灵活的Web交互。然而,实际使用时还需注意安全性和性能优化,确保应用的稳定性和用户...

    Dwr+Hibernate的Lazy问题

    在描述中提到的问题是,当使用DWR调用Hibernate查询方法时,控制台显示了大量的SQL语句,导致性能下降。这通常是由Hibernate的延迟加载机制失效引起的。延迟加载意味着关联的对象或集合只在真正需要时才进行数据库...

    简单使用dwr完整例子

    Direct Web Remoting (DWR) 是一个开源Java库,它允许Web应用程序在浏览器和服务器之间进行实时、异步通信,从而实现类似AJAX的功能...熟悉DWR的使用不仅能够提升开发效率,还能为用户提供更流畅、响应更快的应用体验。

    DWR 框架使用手册

    DWR通过在客户端和服务器之间建立一个通信层,使得开发者可以轻松地在JavaScript中使用Java对象,极大地简化了前后端交互的复杂性。 DWR的核心组件包括: 1. **DWRServlet**:这是DWR的主要入口点,它是一个...

    dwr 包的 使用入门

    - 这些方法需要是public的,并且不包含任何非静态内部类,因为DWR不能透明地处理这些情况。 3. **生成JavaScript接口**: - DWR会自动生成JavaScript接口,使得客户端可以直接调用。这个过程可以通过`Generate`...

    j2ee使用dwr进行后台交互

    DWR (Direct Web Remoting) 是一个开源Java库,它允许在Web应用程序中实现JavaScript与服务器端Java对象的直接交互,极大地简化了AJAX(Asynchronous JavaScript and XML)的使用。在J2EE环境中,DWR作为一个强大的...

    dwr dwrdwr

    dwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwrdwr dwr

    java dwr 使用例子

    对于初学者来说,这是一个很好的起点,它涵盖了DWR基本的使用方式和配置,同时也提供了一个可运行的示例,帮助理解Ajax通信的工作原理。通过深入学习和实践,你可以利用DWR构建更复杂的交互式Web应用。

    dwr跨域访问以及dwr的使用+dwr.jar

    2. **版本兼容性**:确保DWR版本与使用的浏览器版本兼容,避免出现不兼容问题。 3. **安全考虑**:跨域访问增加了安全风险,务必做好权限控制和安全配置。 总结,DWR作为一个强大的工具,极大地简化了Web应用的...

    DWR框架实例及常见问题解决办法,免费放送

    6. **版本兼容性**:确保DWR版本与使用的其他库(如JavaScript库、服务器端框架等)兼容,避免出现不兼容问题。 7. **调试问题**:DWR提供了内置的调试工具,通过控制台日志和错误报告,可以追踪和定位问题。 通过...

    使用dwr+spring实现消息推送

    DWR提供了一种简单的回调机制,使得服务器端的响应能直接更新到网页上。 为了优化性能和用户体验,我们需要考虑一些策略,比如缓存、批量推送、心跳机制等。心跳机制可以用来检测客户端是否在线,避免无效的推送;...

    关于使用DWR返回对象List的方法

    这篇博客文章“关于使用DWR返回对象List的方法”主要探讨了如何通过DWR框架在Java后端处理数据并以List对象的形式返回给前端JavaScript。 在Web开发中,通常我们需要从服务器获取数据并在客户端展示,DWR通过AJAX...

    DWR中文文档DWR

    - 该中文文档将详细介绍DWR的安装、配置、使用方法以及常见问题的解决,是学习DWR的重要参考资料。 通过深入学习这份DWR中文文档,开发者不仅可以掌握DWR的基本用法,还能了解到如何在实际项目中有效利用DWR提升...

    dwr使用例子配置和使用

    下面我们将详细探讨DWR的配置和使用方法。 首先,配置DWR涉及以下几个关键步骤: 1. **引入DWR库**:在项目中添加dwr.jar,这是DWR的核心库,包含了所有必要的类和接口。 2. **创建Java类**:定义你需要在客户端...

    dwr和ajax使用demo

    【DWR(Direct Web Remoting)与Ajax技术详解】 DWR(Direct Web Remoting)是一种在Web应用程序中...理解并掌握DWR和Ajax的结合使用,能够极大地提升你的Web开发能力,让你能构建出更加高效、用户体验优良的应用。

    使用dwr上传文件源码

    在DWR中,上传文件是一种常见的功能,它使得用户可以在不刷新整个页面的情况下,通过Web应用上传文件到服务器。下面将详细介绍如何使用DWR实现文件上传的功能。 首先,我们需要理解DWR的基本工作原理。DWR通过在...

Global site tag (gtag.js) - Google Analytics