如何向tapestry网格行添加工具提示(或标题标签)?

时间:2011-10-12 14:04:01

标签: tapestry

如何向tapestry网格行添加工具提示(或标题标记)?我想在工具提示中显示行敏感信息。我可以在t:loop中执行此操作,但我需要使用t:grid。我不需要在网格中添加额外的列。

我使用的是Tapestry 5.0.18版。

4 个答案:

答案 0 :(得分:1)

我已将问题也放在了tapestry用户组here上。据我所知,答案中没有直接的方法可以做到这一点。

但是我在下面的方法中取得了一些成功。

Tapestry网格在渲染的html页面中转换为表格。使用java脚本,我们可以在每行上附加一个标题标记。

jQuery('td.rowtitle').attr('width', '12%').attr('title', '${message:yourMessage}');

答案 1 :(得分:1)

感谢您的提问。我从Henning的答案中学到了我想要的东西,但是这个语法在Tapestry 5.3中被弃用了,并且不起作用(除非,我可能会重新配置Tapestry以忽略弃用)。这是Henning的例子的“现代”版本

<t:grid ...>
    <p:lastNameHeader>
        <!-- your content -->
    </p:lastNameHeader>
<t:grid>

答案 2 :(得分:1)

我编写了一个GridDecorator mixin,它在网格组件渲染后将装饰器应用于行和单元格。装饰器引用了DOM元素和用于绘制网格行的bean。因此,您可以随意装饰DOM(例如,向特定于该行的每一行添加上下文菜单)。

演示/代码:

答案 3 :(得分:0)

您可以覆盖默认的表格标题和单元格,并用您喜欢的任何内容填充它们:

<table t:type="Grid" ...>
    <t:parameter name="lastNameHeader">
        <!-- Your content -->
    </t:parameter>
</table>

参数的名称是标题的“$ {nameOfRow} Header”和单元格的“$ {nameOfRow} Cell”。

另请查看Grid component reference