JSGrid Basic
HTML
<link rel="stylesheet" href="https://code.jquery.com/ui/1.10.4/themes/redmond/jquery-ui.css">
<script src="https://code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jsgrid/1.5.1/jsgrid.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jsgrid/1.5.1/jsgrid.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jsgrid/1.5.1/jsgrid-theme.css">
<div id="jsGrid"></div>
CSS
.jsgrid-cell {
overflow: hidden;
}
.jsgrid-pager { text-align: center; }
JavaScript
var data = [
{
"Name": "Test Test",
"Married": false
},
{
"Name": "Connor Johnston",
"Married": false
},
{
"Name": "Lacey Hess",
"Married": false
},
{
"Name": "Timothy Henson",
"Married": false
}
];
$("#jsGrid").jsGrid({
height: 300,
width: "100%",
autoload: true,
inserting: true,
filtering: true,
editing: true,
filterRowRenderer: function() {
let $row = $("<tr>").addClass("jsgrid-filter-row");
$row.append($("<td>").attr("colspan", "2").addClass("jsgrid-cell").text("your controls here"));
$row.append($("<td>").addClass("jsgrid-cell"));
return $row;
},
controller: {
loadData: function(filter) {
console.log("filter:", filter);
return data;
}
},
fields: [
{ name: "Name", title:"Name", type: "text", width: "60%", validate: "required", filterValue: function() { return "get filter value1"; } },
{ name: "Married", title:"Married", type: "checkbox", width: "30%", validate: "required", filterValue: function() { return "get filter value2"; } },
{ type: "control", width: "10%" }
]
});