1

これに値するDisplayTag の行を強調表示したいのですが'Total'、JavaScript で試してみましたが、それはできません。以下は、使用しているスニペットです。ガイドしてください。

参照: displaytag を使用して表の行を装飾する方法

2 番目の列に合計があるときにアラートが表示されますが、強調表示されません。

2列目に値を持つ特定の行を強調表示するにはどうすればよいTotalですか?

<script type="text/javascript">
        function onLoad(){
            var table = document.getElementById("data");    
            var tbody = table.getElementsByTagName("tbody")[0];
            var rows = tbody.getElementsByTagName("tr");

            for (i=0; i < rows.length; i++) {
                var value = rows[i].getElementsByTagName("td")[1].firstChild.nodeValue;

                if (value == 'Total') {
                    alert('true');
                    rows[i].style.backgroundColor = "red";

                            }
            }
        }

        </script>
    <body onload="onLoad();">
    <%AppUtil oAppUtil=new AppUtil();%>
    <jsp:useBean id="realTimeIssuance" scope="session" class="com.mindcraft.mis.tpd.actionform.afRealTimeIssuance"></jsp:useBean>

    <display:table name="realtimereportcol" export="true" pagesize="30" sort="list" id="data" requestURI="" class="tablelist" decorator="org.displaytag.decorator.TotalTableDecorator">


            <display:column title="SUB_CHANNEL" sortable="true" property="sub_channel"></display:column>
            <display:column title="AGENT_NAMES" sortable="true" property="agent_names"></display:column>
            <display:column title="FTD" sortable="true" property="ftd"  ></display:column>
            <display:column title="MTD" sortable="true" property="mtd"  ></display:column>
            <display:column title="QTD" sortable="true" property="qtd"  ></display:column>

    </display:table>
    </body>
    </html>
4

3 に答える 3

3

TableDecorator を使用して、以下のように addRowClass() メソッドを実装します...

return ((ListObject)getCurrentRowObject()).getTotal() > 400 ? "highlight" : null;

その後、CSS ファイルでハイライト用の css を定義できます。

詳細については、デモを参照してくださいhttp://demo.displaytag.org/displaytag-examples-1.1/example-rowclass.jsp

于 2013-01-07T13:28:20.050 に答える
0

私の知る限り、に背景色を設定することはできません<tr>。代わりに、同封されているそれぞれに設定する必要があります<td>

次のようなCSSクラスを定義します

tr.highlighted td {
    background-color: red;
}

highlightedクラスを適切な に追加します<tr>

于 2012-09-26T11:18:56.000 に答える