DWRUtil中对表和下拉列表操作

DWRUtil.addRows()
语法:

DWRUtil.addRows(id, array, cellfuncs, [options]);
描述:
向指定id的table元素添加行。它使用数组中的每一个元素在table中创建一行。然后用cellfuncs数组中的没有函数创建一个列。单元格是依次用cellfunc根据没有数组中的元素创建出来的。

DWR1.1开始,addRows()也可以用对象做为数据。如果你用一个对象代替一个数组来创建单元格,这个对象会被传递给cell函数。

你可以写一些像这样的伪代码:

for each member in array
  for each function in cellfuncs
    create cell from cellfunc(array[i])
参数:

id: table元素的id(最好是tbody元素的id)
array: 数组(DWR1.1以后可以是对象),做为更新表格数据。
cellfuncs: 函数数组,从传递过来的行数据中提取单元格数据。
options: 一个包含选项的对象(见下面)
选项包括:

rowCreator: 一个用来创建行的函数(例如,你希望个tr加个css). 默认是返回一个document.createElement("tr")
cellCreator: 一个用来创建单元格的函数(例如,用th代替td). 默认返回一个document.createElement("td")
例子


Comments  (Hide)
sdasdasd

 Posted by Anonymous at Mar 07, 2007 10:55 | Reply To This
var cellFuncs = [
function(data)

Unknown macro: { return data; }
,
function(data)
Unknown macro: { return data.toUpperCase(); }
,
function(data)
Unknown macro: { return "<input type='text' value='test'>"; }
,
function(data)
Unknown macro: { return count++; }

];

为什么我定义的 return "<input type='text' value='test'>"; 在显示时,并不输出一个文本框,而是按原样输出字符串. 在DWR官方网站上那个例子是OK的,搬下来到自己的PC中,怎么就出现这种情况, 还有"id: table元素的id(最好是tbody元素的id)",在我测试过程中传入TABLE 的 ID ,无法实现插入行,必须得TBODY的ID

 Posted by Anonymous at Mar 14, 2007 10:45 | Reply To This
DWRUtil.setEscapeHtml(false);

Sutra Zhou.

 Posted by Anonymous at Apr 25, 2007 00:20 | Reply To This
2.0 里面增加的这个特性。

/** @private The flag we use to decide if we should escape html */
dwr.util._escapeHtml = true;

/**

Set the global escapeHtml flag
*/
dwr.util.setEscapeHtml = function(escapeHtml) {
dwr.util._escapeHtml = escapeHtml;
}
Sutra Zhou

 Posted by Anonymous at Apr 25, 2007 00:22 | Reply To This
怎样添加onMouseOver和onMouseOut事件,我写的
row.onMouseOver="";和row.setAttribute都不行

 Posted by Anonymous at Sep 26, 2007 16:34 | Reply To This
用下面这样的形式添加onMouseOver的事件,就可以了
row.οnmοuseοver=function()

Unknown macro: {row.style.backgroundColor}

 


util.js: 生成列表
DWR的一个常遇到的任务就是根据选项填充选择列表。下面的例子就是根据输入填充列表。

下面将介绍 DWRUtil.addOptions() 的几种是用方法。

如果你希望在你更新了select以后,它仍然保持运来的选择,你要像下面这样做:

var sel = DWRUtil.getValue(id);
DWRUtil.removeAllOptions(id);
DWRUtil.addOptions(id, ...);
DWRUtil.setValue(id, sel);
如果你想加入一个初始的"Please select..." 选项那么你可以直接加入下面的语句:

DWRUtil.addOptions(id, /["Please select ..."]);
然后再下面紧接着加入你真正的选项数据。

DWRUtil.addOptions有5种模式
数组: DWRUtil.addOptions(selectid, array) 会创建一堆option,每个option的文字和值都是数组元素中的值。

对象数组 (指定text): DWRUtil.addOptions(selectid, data, prop) 用每个数组元素创造一个option,option的值和文字都是在prop中指定的对象的属性。

对象数组 (指定text和value值): DWRUtil.addOptions(selectid, array, valueprop, textprop) 用每个数组元素创造一个option,option的值是对象的valueprop属性,option的文字是对象的textprop属性。

对象: DWRUtil.addOptions(selectid, map, reverse)用每个属性创建一个option。对象属性名用来作为option的值,对象属性值用来作为属性的文字,这听上去有些不对。但是事实上却是正确的方式。如果reverse参数被设置为true,那么对象属性值用来作为选项的值。

对象的Map: DWRUtil.addOptions(selectid, map, valueprop, textprop) 用map中的每一个对象创建一个option。用对象的valueprop属性做为option的value,用对象的textprop属性做为option的文字。

ol 或 ul 列表: DWRUtil.addOptions(ulid, array) 用数组中的元素创建一堆li元素,他们的innerHTML是数组元素中的值。这种模式可以用来创建ul和ol列表。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值