JSFiddle - React, Tailwind, and code Playground
by Yuriy Bablyukh
HTML
<!--Provide URL to visualize.js-->
<script type='text/javascript' src="http://build-master.jaspersoft.com:7580/jrs-pro-feature-amber-embedded-report/client/visualize.js"></script>
<div class="datagrid">
<table>
<thead>
<tr>
<th>Label</th>
<th>URI of resource</th>
<th>Type</th>
<th>Created</th>
</tr>
</thead>
<tbody id="ResultsTableContent">
<tr rowspan="4" align="center">
<td>
<h3>Loading...</h3>
</td>
</tr>
</tbody>
</table>
</div>
CSS
.datagrid table {
border-collapse: collapse;
text-align: left;
width: 100%;
}
.datagrid {
font: normal 12px/150% Arial, Helvetica, sans-serif;
background: #fff;
overflow: hidden;
border: 1px solid #006699;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
.datagrid table td, .datagrid table th {
padding: 3px 10px;
}
.datagrid table thead th {
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #006699), color-stop(1, #00557F));
background:-moz-linear-gradient(center top, #006699 5%, #00557F 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#006699', endColorstr='#00557F');
background-color:#006699;
color:#FFFFFF;
font-size: 15px;
font-weight: bold;
border-left: 1px solid #0070A8;
}
.datagrid table thead th:first-child {
border: none;
}
.datagrid table tbody td {
color: #00496B;
border-left: 1px solid #E1EEF4;
font-size: 12px;
font-weight: normal;
}
.datagrid table tbody .alt td {
background: #E1EEF4;
color: #00496B;
}
.datagrid table tbody td:first-child {
border-left: none;
}
.datagrid table tbody tr:last-child td {
border-bottom: none;
}
.datagrid table tfoot td div {
border-top: 1px solid #006699;
background: #E1EEF4;
}
.datagrid table tfoot td {
padding: 0;
font-size: 12px
}
.datagrid table tfoot td div {
padding: 2px;
}
.datagrid table tfoot td ul {
margin: 0;
padding:0;
list-style: none;
text-align: right;
}
.datagrid table tfoot li {
display: inline;
}
.datagrid table tfoot li a {
text-decoration: none;
display: inline-block;
padding: 2px 8px;
margin: 1px;
color: #FFFFFF;
border: 1px solid #006699;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #006699), color-stop(1, #00557F));
...
JavaScript
visualize(function (v) {
v.resourcesSearch({
folderUri: "/public",
recursive: false,
limit: 0,
success: renderResults
})
})
// utility function
function renderResults(results) {
var tbody = document.getElementById("ResultsTableContent"),
alt = false,
html = [];
for (var i = 0; i < results.length; i++) {
html.push((alt = !alt) ? '<tr>' : '<tr class="alt">');
html.push("<td>" + results[i].label + "</td>");
html.push("<td>" + results[i].uri + "</td>");
html.push("<td>" + results[i].resourceType + "</td>");
html.push("<td>" + results[i].creationDate + "</td>");
html.push("</tr>");
}
tbody.innerHTML = html.join("");
}