- <!DOCTYPE html>
- <html>
-
- <head>
- <meta charset="utf-8">
- <title>ZingGrid Demo</title>
- <script nonce="undefined" src="https://cdn.zinggrid.com/zinggrid.min.js"></script>
- <style>
- .zg-body .controls--container {
- padding: 1rem;
- }
-
-
- zing-grid[loading] {
- height: 93px;
- }
- </style>
- </head>
-
- <body class="zg-body">
- <div class="inner--container">
- <!-- toggle controls -->
- <div class="controls--container">
- <div>
- <label for="group1">Group By Season: </label>
- <input type="checkbox" checked id="group1" data-group-index="season">
- <br>
- <label for="group2">group By Episode: </label>
- <input type="checkbox" checked id="group2" data-group-index="episode">
- <br>
- <label for="group3">group By Method: </label>
- <input type="checkbox" id="group3" data-group-index="method">
- <br>
- <label for="group3">group By Location: </label>
- <input type="checkbox" id="group4" data-group-index="location">
- <br>
- <label for="group3">group By Allegiance: </label>
- <input type="checkbox" id="group5" data-group-index="allegiance">
- </div>
- </div>
- <zing-grid caption="GroupBy Example" group-by="season,episode" src="https://cdn.zinggrid.com/datasets/got-deaths.json">
- </zing-grid>
- </div>
- <script>
- ZingGrid.setLicense(['26ccbfec16b8be9ee98c7d57bee6e498']); // element references
- const zgRef = document.querySelector('zing-grid');
- const groupByInputs = document.querySelectorAll('input[type="checkbox"]');
-
- // function declarations
- function _groupByGrid(e) {
- // Determine which indices to group by
- let checked = document.querySelectorAll('[data-group-index');
- let columnIndex = [...checked]
- .map((el) => el.checked ? el.getAttribute('data-group-index') : false)
- .filter((index) => index)
- .join(',');
-
- // API method to actually group
- zgRef.setGroupBy(columnIndex);
- }
-
- // add event listeners
- [...groupByInputs].forEach(groupByInput => {
- groupByInput.addEventListener('change', _groupByGrid);
- });
- </script>
- </body>
-
- </html>
- <!DOCTYPE html>
- <html>
-
- <head>
- <meta charset="utf-8">
- <title>ZingGrid Demo</title>
- <script src="https://cdn.zinggrid.com/zinggrid.min.js"></script>
- </head>
-
- <body class="zg-body">
- <div class="inner--container">
- <!-- toggle controls -->
- <div class="controls--container">
- <div>
- <label for="group1">Group By Season: </label>
- <input type="checkbox" checked id="group1" data-group-index="season">
- <br>
- <label for="group2">group By Episode: </label>
- <input type="checkbox" checked id="group2" data-group-index="episode">
- <br>
- <label for="group3">group By Method: </label>
- <input type="checkbox" id="group3" data-group-index="method">
- <br>
- <label for="group3">group By Location: </label>
- <input type="checkbox" id="group4" data-group-index="location">
- <br>
- <label for="group3">group By Allegiance: </label>
- <input type="checkbox" id="group5" data-group-index="allegiance">
- </div>
- </div>
- <zing-grid caption="GroupBy Example" group-by="season,episode" src="https://cdn.zinggrid.com/datasets/got-deaths.json">
- </zing-grid>
- </div>
- </body>
-
- </html>
- .zg-body .controls--container {
- padding: 1rem;
- }
- // element references
- const zgRef = document.querySelector('zing-grid');
- const groupByInputs = document.querySelectorAll('input[type="checkbox"]');
-
- // function declarations
- function _groupByGrid(e) {
- // Determine which indices to group by
- let checked = document.querySelectorAll('[data-group-index');
- let columnIndex = [...checked]
- .map((el) => el.checked ? el.getAttribute('data-group-index') : false)
- .filter((index) => index)
- .join(',');
-
- // API method to actually group
- zgRef.setGroupBy(columnIndex);
- }
-
- // add event listeners
- [...groupByInputs].forEach(groupByInput => {
- groupByInput.addEventListener('change', _groupByGrid);
- });