баннер параметров экспорта displaytag - место в верхней части таблицы - PullRequest
0 голосов
/ 03 июня 2009

Я использую библиотеку тегов displaytag, и до сих пор она работала потрясающе. Тем не менее, я не вижу простой вариант или способ разместить баннер экспорта в верхней части таблицы, а не в нижней части. Как это можно сделать?

Спасибо, Рой

Ответы [ 3 ]

1 голос
/ 14 августа 2013

У меня была такая же проблема, как и у вас. Я решил использовать jquery так:

Мой displaytag.properties:

export.banner=<div id="export" class="exportlinks">Exporter : {0}</div>

Моя таблица, созданная с помощью DisplayTag в моем JSP:

<div id="datagrid">
    <div class="datagrid">
        <display:table name="sessionScope.resultats" sort="list" defaultsort="2" pagesize="<%=nombreLignes %>" export="true">
            <display:column property="code" title="<%=codeLabel %>" sortable="true" href="javascript:edition(document.forms[0], '#')" paramId="code" paramProperty="code" style="width:20%;" />
            <display:column property="nom" title="<%=nomLabel %>" sortable="true" href="javascript:edition(document.forms[0], '#')" paramId="code" paramProperty="code" style="width:80%;" />
            <display:setProperty name="export.pdf" value="true" />
            <display:setProperty name="export.csv.filename" value="${nomExport }.csv"/>
            <display:setProperty name="export.pdf.filename" value="${nomExport }.pdf"/>
        </display:table>
    </div>
</div>

Функция в jquery:

$(function()
{
    var export1 = document.getElementById('export');
    if(export1 != null)
    {
        // 2 duplications
        var export2 = export1.cloneNode(true);
        var export3 = export1.cloneNode(true);
        var datagrid = document.getElementById('datagrid');

        // Placement on top 
        datagrid.insertBefore(export2, datagrid.firstChild);

        // Placement on bottom
        datagrid.parentNode.insertBefore(export3, datagrid.nextSibling);

        // Delete node generated by DisplayTag
        export1.parentNode.removeChild(export1);
    }
});

И результат:

enter image description here

0 голосов
/ 21 августа 2017

Пожалуйста, добавьте ниже код:

$(function()
  {

  // Placement on top.#row is display tag id
  $( ".exportlinks" ).insertBefore( "#row" );

});
0 голосов
/ 08 мая 2010

Мы смогли разместить меню экспорта вверху, используя несколько CSS-кодов против идентификатора «exportTypes». Я не из тех фронтэндов, которые делали это в нашей команде, так что, может быть, это еще не все, но похоже, что вы можете сделать что-то вроде:

div.framed-outer.guttered #exportTypes {
    *top: -10px;
}

Там, где обрамленный-внешний и водосточный желоб - лишь некоторые разделители вокруг стола, который мы используем.

В displaytag.properties мы определили:

export.banner=<div id="exportTypes"><span class="label">Export: </span>{0}</div>

Опять же, это может быть не вся история, но я вижу, что это будет сделано в нашем проекте. Надеюсь, это немного поможет.

...