Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <title></title>
- <link rel="stylesheet" href="styles/jqxGridCustomTheme.css" type="text/css"/>
- <link rel="stylesheet" href="jqwidgets/styles/jqx.base.css" type="text/css" />
- <script type="text/javascript" src="scripts/jquery-2.0.3.min.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxcore.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxdata.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxbuttons.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxscrollbar.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxmenu.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxcheckbox.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxlistbox.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxdropdownlist.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxgrid.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxgrid.sort.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxgrid.pager.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxgrid.selection.js"></script>
- <script type="text/javascript" src="jqwidgets/jqxgrid.edit.js"></script>
- <script type="text/javascript" src="scripts/gettheme.js"></script>
- <script type="text/javascript">
- $(document).ready(function () {
- // var url = "/A1.txt";
- var url = "http://pastebin.com/raw.php?i=xvJzEt8G";
- // prepare the data
- var source =
- {
- datatype: "json",
- url: url,
- root: "Rotation>Shifts"
- };
- var dataAdapter = new $.jqx.dataAdapter(source, {
- // Called this function to do some changes in the original data I was getting from server
- beforeLoadComplete: function (records, original) {
- //initial columns array
- var columnsData = [
- { text: 'Icon', datafield: 'Icon', width: 250 },
- { text: 'Name', datafield: 'Name', width: 150 },
- { text: 'Start', datafield: 'BeginOffset', width: 180 },
- { text: 'End', datafield: 'EndOffset', width: 120 },
- { text: 'Hours', datafield: 'ConfigIndex', width: 120 },
- { text: 'Paid', datafield: 'PaidHours', width: 120 },
- { text: 'Period', datafield: 'Period', width: 120 }
- ];
- /**
- * Function to map my baseline array which was a array of numbers like this [0,0,0,0,0,0,0,0,0,0] to seperate objects so I can put each array index to a separate cell
- * It will return the same records object with added fields of all the baseline indexes.
- */
- var test= mapBaseline(records, columnsData);
- /**
- * Not so general but still works for me, as almost all of the time Baseline length is same for all objects
- * Creating columns so that Baseline could be mapped.
- */
- for (var k=0; k < test[0].Baseline.length; k++)
- {
- columnsData.push({text:k, datafield: 'Baseline'+k, width: 20});
- }
- // initialize jqxGrid columns
- $('#jqxgrid').jqxGrid({
- columns: columnsData
- });
- }
- });
- var jqxgridColumns = $('#jqxgrid').jqxGrid({
- width: 1200,
- source: dataAdapter,
- editable: true,
- sortable: true,
- autoheight: true,
- sortable: true,
- altrows: true,
- theme: 'EnergyBlue',
- enabletooltips: true,
- selectionmode: 'multiplecellsadvanced'
- });
- });
- function mapBaseline(arr, columns) {
- for (var i in arr)
- {
- console.log(arr[i].Baseline);
- for (var k=0; k < arr[i].Baseline.length; k++)
- {
- console.log(arr[i].Baseline[k]);
- arr[i]["Baseline"+k] = arr[i].Baseline[k];
- }
- }
- return arr;
- }
- </script>
- <meta content="">
- <style></style>
- </head>
- <body class="default">
- <h1>Test Grid using Jqxgrid by Mirza </h1>
- <div id='jqxWidget' style="font-size: 13px; font-family: Verdana; float: left;">
- <div id="jqxgrid">
- </div>
- </div>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement