1
我有一個使用Proc Report製作的ODS HTML表格,我需要將HTML類屬性添加到表格行<tr>
,而不是每個單獨的<td>
單元格。原因是這是TableSorter jQuery插件中的stickyRow選項所必需的,以防止它不能作爲表的其餘部分排序。是否可以使用計算語句向SAS Proc Report中的<tr>表格行添加類?
行(總和行)在計算語句中創建。
以下語句將行中的每個<td>
單元格設置爲「靜態」,但不會在該選項中需要的<tr>
中進行設置。
PROC REPORT
compute BEFORE;
&variabel. = 'Totalt';
call define (_ROW_,"style","style={flyover='Totalt' FONT_WEIGHT=bold
background=lightgrey class='static'}");
ENDCOMP;
的HTML解析到此:
<tr>
<td title="Totalt" class="l static" style=" background-color: #d3d3d3; font-weight: bold;」>T</a></td>
<td title="Totalt" class="r static" style=" background-color: #d3d3d3; font-weight: bold;"> 44,737,223</td>
<td title="Totalt" class="r static" style=" background-color: #d3d3d3; font-weight: bold;"> 43,321,900</td>
有沒有一種方法來設置類爲 '靜態' 整個<tr>
- 行,和不是每個細胞?
以下是我需要的是這樣的:
<tr class="static">
<td title="Totalt" class="l" style=" background-color: #d3d3d3; font-weight: bold;」>T</a></td>
<td title="Totalt" class="r" style=" background-color: #d3d3d3; font-weight: bold;"> 44,737,223</td>
<td title="Totalt" class="r" style=" background-color: #d3d3d3; font-weight: bold;"> 43,321,900</td>
更新:這是一個可重複的例子:
ODS HTML FILE='H:\Temp\demo.html';
ODS HTML TEXT="
<script src='https://code.jquery.com/jquery-3.2.1.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.28.15/js/jquery.tablesorter.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.28.15/js/jquery.tablesorter.widgets.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.28.15/js/widgets/widget-staticRow.min.js'></script>";
ODS HTML TEXT="
<script>
$(function(){
$(document).ready(function() {
$('.table').tablesorter({theme: 'blue', widgets: ['stickyHeaders','zebra','staticRow']});
});
});
</script>";
PROC REPORT DATA=SASHELP.CLASS;
COLUMN SEX AGE N WEIGHT;
DEFINE sex /DISPLAY;
DEFINE age /DISPLAY;
DEFINE weight/ANALYSIS;
RBREAK BEFORE/SUMMARIZE;
COMPUTE before;
CALL DEFINE (_ROW_,"style","style={flyover='Total number and weight' FONT_WEIGHT=bold background=lightgrey class='static'}");
ENDCOMP;
RUN;
ODS HTML CLOSE;
你能給一個可重複的例子嗎?我試圖重現你正在做的事情,它並不是立即顯示出你在計算語句中做什麼。使用'SASHELP.CARS'或'CLASS'或其他什麼東西來製作一些東西。 – Joe
@Joe我已經添加了一個例子。爲了讓示例按預期工作,我必須將表格的第一行
我不知道你是否可以使用CSS,並設置一個規則,說任何'tr'是父類的一個單元格,不管你的'td'最終是靜態的嗎? – Joe
回答
我做過類似的東西整合jQuery的數據表與當PROC報告。
從內存中,您需要編輯htmlcss和/或phtml標記集,修改table_foot和row事件,但我無法完全記得我做了什麼。
我會盡力找到我的代碼,並相應地更新答案。
來源
2017-08-11 14:36:14
相關問題