car*_*rds 6 javascript dojo datagrid xpages
这是我第一次使用数据网格,所以请原谅任何不清楚的地方.
我有一个在dojo数据网格(dojox.grid.DataGrid)中实现的json文本.
var jsonStore = new dojo.data.ItemFileWriteStore({ url: "xAgent.xsp"});
var layout = [
{cells:[ [
{field:'firstname', name:'First'},
{field:'lastname', name:'Last'},
{field:'policy', name:'Policy'},
{field:'lastaccessed', name:'Last Accessed'}
] ], noscroll:false
}
];
grid = new dojox.grid.DataGrid({
store: jsonStore,
structure: layout,
rowsPerPage: 50,
autoHeight: 50
}, '#{id:gridNode}');
grid.startup();
Run Code Online (Sandbox Code Playgroud)
网格本身创建得非常好,所有数据都会根据需要显示,但我希望其中一个字段(特定的"策略"字段)链接到另一个页面.当我重定向时,我需要在'policy'字段中包含信息,因为策略编号将在下一页中使用.
换句话说,我希望表中的所有策略字段都有自己唯一的外部链接,该链接将包含来自相应字段的策略编号.我能想到的最简单的方法是通过更改提供给DataGrid结构参数的布局变量,但可能有一种更简单的方法.如果有人有任何想法我会非常感激.
提前致谢.
您可以使用格式化程序在网格内创建链接、dojo 按钮等。
Formatter 是一个被调用的 JavaScript 函数,它返回要在单元格中显示的值。数据存储中的值作为参数传递给函数。插入页面的返回值可以是任何合法的 HTML,甚至是 dijit 小部件。
因此,在您的情况下,请向策略列添加格式化程序
{field:'policy', name:'Policy', formatter: createLink},
Run Code Online (Sandbox Code Playgroud)
然后定义带有必要外部链接的函数。例如:
function createLink(data){
return ("<a href=policyinfo.jsp?policy="+data+">"+data+"</a>");
}
Run Code Online (Sandbox Code Playgroud)
参考:http://dojotoolkit.org/reference-guide/1.10/dojox/grid/DataGrid.html#id3
| 归档时间: |
|
| 查看次数: |
2661 次 |
| 最近记录: |