0

我需要更改网格标题的标题,并向其添加自定义组件。我使用 .properties 文件设置标题,并使用此模板代码添加自定义组件:

<table class="table table-striped" t:type="grid" t:source="data" t:rowsPerPage="50" t:pagerPosition="bottom">

    <p:specialHeader>
        <t:tooltip tip="tipData"></t:tooltip>
    </p:specialHeader>

</table>

在浏览器中查看网格时,组件出现但没有标题。

如果我在模板中设置一个标题,像这样,那么它就会失去排序功能:

    <p:specialHeader>Title
        <t:tooltip tip="tipData"></t:tooltip>
    </p:specialHeader>

如何让标题、排序和自定义组件出现?

4

1 回答 1

3

正如我在这里所说,您不能将默认标题块和您自己的自定义标题块组合在一起,它要么是一个,要么是另一个。

我认为你最好的选择是mixin在这里查看 Taha 的博客文章,他在其中创建了一个适用于 Label 组件的 HelpText 混合。他的 mixin 查看消息目录中的“propertyName-help”条目,并向 DOM 添加“title”属性。博客文章更进一步,使用 ComponentClassTransformWorker2 将 HelpText 混合附加到每个标签(甚至是 BeanEditor 组件内的标签)。

您可以做同样的事情,但您将为GridGridColumns创建一个 mixin (Grid 委托给 GridColumns 以绘制标题)。如果您想要一些 Grid mixin 的示例,请查看我的挂毯缝合演示在这里这里

因此,您不会重复使用工具提示组件,而是复制行为。这很可能涉及向thDOM 元素服务器端添加“data-tooltip”属性。然后,您可以在客户端上触发一些 javascript 以查找所有具有“data-tooltip”属性的元素并执行一些 UI 魔术。

于 2013-05-24T07:49:43.340 回答