- 浏览: 706056 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (272)
- Struts1.x (7)
- 事务 (2)
- Hibernate (11)
- 数据库 (14)
- JavaScript&Ajax (43)
- JSP&Servlet (2)
- Flex (1)
- 其它 (9)
- Java (22)
- 框架集成 (1)
- WebService (3)
- Tomcat (3)
- 加密和安全登录 (13)
- 基于原型的JavaScript (0)
- JavaDoc和Java编码规范 (3)
- CAS (1)
- 加密 (1)
- Axis2 (10)
- Ext2.x (3)
- SSH整合 (2)
- Ext (0)
- 正则表达式 (1)
- 设计模式 (4)
- 对象序列化技术 (3)
- CVS (2)
- Struts2 (6)
- Spring 2.x (7)
- Spring Security (2)
- Java 课程 (20)
- 程序员之死 (1)
- 软件测试 (6)
- UML (5)
- NetBeans (1)
- cxf (1)
- JMS (13)
- 设计 (5)
- ibatis2.x (3)
- Oracle (1)
- WebSphere (7)
- 概要设计 (1)
- DB2 (10)
- PowerDesigner (0)
- 软件工程 (5)
- rose (1)
- EA (1)
- LDAP (7)
- Portal&Portlet (3)
- MQ (10)
- ESB (4)
- EJB (2)
- JBoss (2)
最新评论
-
typeRos:
只有配置文件,没有代码么大神
Spring实现IBMMQ的JMS消息发布/订阅模式 -
panamera:
如果ActiveMQ服务器没有启动,这个时候消息生产者使用Jm ...
Spring JMSTemplate 与 JMS 原生API比较 -
lian819:
顶1楼, 引用文件, 配置属性, 太方便了
EXTJS 同步和异步请求 -
wilhard:
说得清楚明白
<%@ include file=""%>与<jsp:include page=""/>区别 -
刘琛颖:
总结的很好。受益了
javascript 父窗口(父页面)— 子窗口 (子页面)互相调用的方法
我在使用DWR时,试了很多次都无法在动态生成的table中的一个或多个td中进行动态链接,后来才发现原来在cellfuncs中覆盖了我想定义的输出,不过无意中让我发现了可以用下面的方法来处理( http://www.yumt.com/aeonsun )。
方法如下:
DWRUtil.addRows(id, array, cellfuncs, [options]);
这个函数估计调用的人很多,而且现在支持直接将对象传给这个函数,这就方便了许多(以前只能是数组),而且cellfuncs的功能也很强大,一般都会省略options参数(这个参数只用做定义CSS或其它特殊使用,我这里就是在这个参数里做动态链接的处理)。
下面就是处理代码:
DWRUtil.addRows('testid', myObject, [ function(data) { return data.name; }, function(data) { //return data.id; //通常都会在这里直接返回处理的数据,如果要实现动态多链接, //那么这里就什么都别输出(当然也可以输出,但这里所有的html标记都会直接显示在页面上, //无法进行解析) //doNothing }], {rowCreator:function(options) { return document.createElement("tr"); }, cellCreator:function(options) { if(options.cellNum==1){ var td = document.createElement("td"); td.setAttribute("align","center"); var thtml = "<a href='#' onclick=\"javascript:mydel( '"+options.rowData.testId+"');\">删除</a>"; td.innerHTML = thtml; return td; }else{ return document.createElement("td"); } } });
cellfuncs中的处理相当重要,当直接返回值时,会影响[options]参数中的处理内容(比如options中要
加入的TD内容会无效,当然,td.setAttribute("align","center")等是有效的)。
对DWRUtil.addRows(id, array, cellfuncs, [options])的补充: 其中: id是table元素的id,最好使用tbody array数据,从1.1开始支持对象 cellfuncs: 函数数组,从传递过来的行数据中提取单元格数据。 如: var cellfuncs = [ function(data) { return data; }, function(data) { return data.toUpperCase(); }, function(data) { var input = document.createElement("input"); input.setAttribute("type", "button"); input.setAttribute("value", "DOM Test"); input.setAttribute("onclick", "alert('" + data + "');"); return input; }, function(data) { return "<input type='button' value='innerHTML Test'
onclick='alert(\"" + data + "\");'>"; } ]
注意:这里定义的数组size表示td的数量,面data就是array的引用,如果使用convert转换过bean,那么可以直接调用属性。
[options]:这个最为有用,也是这里所要说的重点,包含两个对象
rowCreator: 一个用来创建行的函数(例如,你希望个tr加个css). 默认是返回一个document.createElement("tr")
cellCreator: 一个用来创建单元格的函数(例如,用th代替 td). 默认返回一个document.createElement("td")
一般都用不到这个参数,但对于有特殊要求的朋友来说,这就成了重点
定义的例子如下:
var custoptions = {rowCreator:function(options) { return document.createElement("tr"); }, cellCreator:function(options) { if(options.cellNum==1){ var td = document.createElement("td"); td.setAttribute("align","center"); var thtml = "<a href='#' onclick=\"javascript:mydel
('"+options.rowData.testId+"');\">删除</a>"; td.innerHTML = thtml; return td; }else{ return document.createElement("td"); } } }
其中 options 参数的属性可用的为:
rowData: the element value from the array (the same for all cells in a row)
rowIndex: the key (if map) or index (if array) from the collection
rowNum:
The row number counting from 0 in this section (so if you are using
tbody, it counts rows in the tbody and not the whole table)
data: The 'computed' data value for the cell (cellCreators only)
cellNum: The cell number that we are altering counting from 0 (cellCreators only)
我在上面用到了rowNum、rowData属性
最后还是说一句,DWR太伟大了,让我这个不懂JS的人也可以轻松上阵。
发表评论
-
JavaScript 代码压缩工具
2011-02-16 15:15 937见附件,免费工具。 -
在服务器端判断request来自Ajax请求(异步)还是传统请求(同步)
2009-11-26 13:38 10708在服务器端判断request来自Ajax请求(异步)还是传 ... -
转:用Javascript来关闭IE浏览器和FireFox浏览器
2009-06-03 11:08 2176原文地址:http://hi.baidu.com/suen ... -
JavaScript 解析 JSON
2009-02-25 20:36 0JSON (JavaScript Object Not ... -
JavaScript的四舍五入运算
2009-02-02 13:49 1770function ForDight(Dight,How) { ... -
JavaScript 使用面向对象的技术创建高级 Web 应用程序
2009-01-19 21:44 1510转载: JavaScript 使用面 ... -
在JavaScript中使用面向对象
2009-01-18 17:05 1122原文地址:http://www.cnblo ... -
应当这样编写 JavaScript 代码吗?
2009-01-17 23:09 1120应当这样编写 JavaScript 代码吗? 您已经看到Ja ... -
JavaScript模拟命名空间
2009-01-17 17:35 1328JavaScript模拟命名空间 在C++和C#中,命名 ... -
JavaScript 从类继承
2009-01-17 17:32 1274从类继承 到这里,我们已经了解了构造函数和原型对象如何使您在 ... -
模拟私有属性
2009-01-07 15:46 1129模拟私有属性 现在介绍闭包如何帮助模拟私有成员。正常情况 ... -
闭 包
2009-01-07 15:10 1237闭包 我没有自觉地学习过JavaScript。我必须快点了解 ... -
静态属性和方法
2009-01-05 18:15 1310静态属性和方法 有时,您需要绑定到类而不是实例的属性或方法, ... -
原 型
2009-01-05 17:58 1062原型 在使用JavaScript的面向对象编程中,原型对象 ... -
构造函数而不是类
2009-01-04 23:15 1391构造函数而不是类 前面提到过,有关JavaScript ... -
JavaScript 函数是最棒的
2009-01-04 19:25 1471JavaScript 函数是最棒的 在很多编程语言中,函数和 ... -
insertAdjacentElement方法
2008-12-29 18:08 2468语法: oElement = object . inse ... -
javascript 中定义private 方法
2008-12-26 12:40 2297出处:http://aoqi1883.blog.163.co ... -
event.returnValue和return false的区别
2008-12-25 19:52 26605<!DOCTYPE html PUBLIC " ... -
按“回车”键提交表单
2008-12-25 19:17 2557<!DOCTYPE html PUBLIC " ...
相关推荐
5. **HTML结构**:创建一个HTML表格`<table id="myTable">...</table>`,并使用JavaScript动态填充数据。 这个例子展示了DWR如何简化Web应用中的数据获取和显示过程,同时也揭示了如何结合使用DWR和SQL Server 2005...
总结起来,"dwr城市选择的联动,util.js方法的使用,动态table"涉及的技术主要包括DWR框架、JavaScript DOM操作以及服务器端与客户端的数据交互。这些技术的综合运用,可以创建出高效、实时的Web应用,满足用户对...
标题 "JQuery 动态生成DIV、Table并处理数据" 涉及的是使用JavaScript库JQuery来动态创建HTML元素,特别是DIV和Table,并且处理其中的数据。这在Web开发中非常常见,尤其是在构建交互式用户界面时。下面将详细阐述这...
DWR (Direct Web Remoting) 是一个开源的Java库,它允许Web应用程序在客户端和服务器之间进行实时的、异步的通信。这个技术的核心概念是它打破了传统的HTTP请求-响应模型,使得JavaScript代码可以直接调用服务器端的...
"DWR 自动完成生成表格的例子" 指的是使用 Direct Web Remoting (DWR) 技术来实现一个具有自动完成功能的表格。DWR 是一种允许 JavaScript 与服务器端 Java 代码进行交互的开源库,特别适用于创建动态、交互性强的...
在本主题中,我们将深入探讨如何使用DWR生成目录树,这在构建动态的、交互性强的Web应用时尤其有用。 目录树是一种数据结构,通常用于表示文件系统或组织层次结构。在Web应用中,用户可能需要浏览多级目录结构,...
DWR(Direct Web Remoting)是一个开源框架,它简化了AJAX在Java后端与前端JavaScript之间的通信。在这个项目中,DWR被用来实现在不刷新整个页面的情况下,从后台获取list数据并动态地在表格中展示,同时还有二级...
Direct Web Remoting (DWR) 是一个开源Java库,它允许Web应用程序在浏览器和服务器之间进行实时、异步通信,从而实现类似AJAX的功能。在这个"简单使用DWR完整例子"中,我们将深入理解DWR的基本概念、配置、以及如何...
DWR (Direct Web Remoting) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行交互,实现动态的Web应用。DWR简化了AJAX(Asynchronous JavaScript and XML)的开发,使得开发者可以像调用...
DWR (Direct Web Remoting) 是一个开源JavaScript库,它允许Web应用程序在客户端与服务器之间进行实时、异步通信,无需使用XMLHttpRequest(Ajax)或IFrame。在本示例中,我们将深入探讨如何使用DWR填充表格,这是...
在这个"初学DWR时做的一个项目实例"中,我们将深入探讨DWR的核心概念、工作原理以及如何通过实际代码来运用这些知识。 1. **DWR的基本概念** DWR使得JavaScript可以调用Java方法,仿佛它们都是本地函数一样。这极...
在标题中提到的"DWRtree DWR实现AJAX的一个树形",指的是使用DWR来创建一个基于AJAX的动态树形结构。这种树形结构通常用于网站导航、文件目录展示或者层级数据的交互操作。通过AJAX,用户可以在不刷新整个页面的情况...
窗口" 暗示了这是一个关于使用Direct Web Remoting (DWR)技术在Web应用中动态创建表格,并在数据加载期间显示“加载中”提示的教程。DWR是一种JavaScript库,允许在浏览器和服务器之间进行实时的异步通信,类似于...
DWR作为Java世界中的一个强大工具,极大地简化了AJAX开发,使得JavaScript能够轻松地与服务器进行通信。通过理解其核心功能、配置步骤以及使用流程,开发者可以快速地在项目中引入DWR,构建高效、动态的Web应用。
DWR (Direct Web Remoting) 是一个开源的Java框架,它允许JavaScript在浏览器端直接调用服务器端的Java方法,从而实现动态Web应用中的Ajax功能,即无刷新更新页面。DWR通过在客户端和服务器之间建立一个通信层,使得...
DWR (Direct Web Remoting) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行直接交互,实现动态Web应用。通过DWR,开发者可以在不刷新整个页面的情况下更新部分网页内容,提高了用户体验。...
这个"TestDWR"文件很可能是DWR的一个简单示例项目,用于演示如何配置和使用DWR框架。 在DWR的实例中,主要涉及以下几个关键知识点: 1. **DWR的配置**:首先,你需要在Web应用的`web.xml`文件中配置DWR的Servlet,...
**DWR(Direct Web Remoting)使用方法详解** DWR,全称为Direct Web Remoting,是一种开源Java技术,用于在Web应用程序中实现浏览器与服务器之间的实时双向通信。它允许JavaScript直接调用Java方法,就像它们在...
Direct Web Remoting (DWR) 是一种开源的Java库,它...以上就是DWR包的使用入门,从安装配置到实际调用,涵盖了一个完整的DWR应用开发流程。通过学习和实践,你可以更好地理解和利用DWR来构建高效、交互性强的Web应用。
2. **生成DWR映射文件**:为每个要在客户端调用的Java方法生成一个对应的DWR接口。 3. **编写JavaScript代码**:在JavaScript中使用DWR提供的API调用服务器端方法。 4. **处理返回数据**:当服务器响应后,DWR会自动...