UNPKG

jqwidgets-framework

Version:

jQWidgets is an advanced jQuery, Angular, React, ASP .NET MVC, Custom Elements and HTML5 UI framework.

100 lines (89 loc) 4.25 kB
<!DOCTYPE html> <html lang="en"> <head> <title id='Description'>Grid Custom Element Show/HideColumns</title> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> <meta name="viewport" content="width=device-width, initial-scale=1 maximum-scale=1 minimum-scale=1" /> <meta name="description" content="This is an example of Custom Element Grid's show and hide columns." /> <link rel="stylesheet" href="../jqwidgets/styles/jqx.base.css" type="text/css" /> <link rel="stylesheet" href="../styles/demos.css" type="text/css" /> <script type="text/javascript" src="../scripts/webcomponents-lite.min.js"></script> <script type="text/javascript" src="../jqwidgets/jqxcore.js"></script> <script type="text/javascript" src="../jqwidgets/jqxcore.elements.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/jqxgrid.js"></script> <script type="text/javascript" src="../jqwidgets/jqxgrid.selection.js"></script> <script type="text/javascript" src="../jqwidgets/jqxgrid.columnsresize.js"></script> <script type="text/javascript" src="../jqwidgets/jqxdata.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="../scripts/demos.js"></script> <script type="text/javascript"> var listSource = [ { label: 'Name', value: 'name', checked: false }, { label: 'Beverage Type', value: 'type', checked: true }, { label: 'Calories', value: 'calories', checked: true }, { label: 'Total Fat', value: 'totalfat', checked: true }, { label: 'Protein', value: 'protein', checked: true } ]; var source = { datatype: 'json', datafields: [ { name: 'name' }, { name: 'type' }, { name: 'calories', type: 'int' }, { name: 'totalfat' }, { name: 'protein' } ], id: 'id', url: '../sampledata/beverages.txt' }; var dataAdapter = new jqx.dataAdapter(source); JQXElements.settings['gridSettings'] = { source: dataAdapter, columnsresize: true, columns: [ { text: 'Name', datafield: 'name', width: 100, hidden: true }, { text: 'Beverage Type', datafield: 'type' }, { text: 'Calories', datafield: 'calories' }, { text: 'Total Fat', datafield: 'totalfat' }, { text: 'Protein', datafield: 'protein' } ] }; JQXElements.settings['listBoxSettings'] = { source: listSource, checkboxes: true }; window.onload = function() { var myGrid = document.querySelector('jqx-grid'); var myListBox = document.querySelector('jqx-list-box'); myListBox.addEventListener('checkChange', function(event) { myGrid.beginupdate(); if (event.args.checked) { myGrid.showcolumn(event.args.value); } else { myGrid.hidecolumn(event.args.value); } myGrid.endupdate(); }); }; </script> </head> <body> <div class="example-description"> This example illustrates how to show and hide Custom element Grid columns. </div> <div style="float: left;"> <jqx-list-box settings="listBoxSettings"></jqx-list-box> </div> <div style="float: left; margin-left: 20px;"> <jqx-grid settings="gridSettings"></jqx-grid> </div> </body> </html>