JSFiddle - React, Tailwind, and code Playground

by dkamburov

HTML

<script src="http://igniteui.com/js/modernizr.min.js"></script>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.min.js"></script>
<script src="http://cdn-na.infragistics.com/igniteui/latest/js/infragistics.core.js"></script>
<script src="http://cdn-na.infragistics.com/igniteui/latest/js/infragistics.lob.js"></script>
<script src="http://igniteui.com/js-data/nw-customers-with-orders-big"></script>
<link href="http://cdn-na.infragistics.com/igniteui/latest/css/themes/infragistics/infragistics.theme.css" rel="stylesheet"></link>
<link href="http://cdn-na.infragistics.com/igniteui/latest/css/structure/infragistics.css" rel="stylesheet"></link>

<table id="grid"></table>

<br>
<button onclick="storeCols()">1)store columns</button>
<button onclick="removeCols()">2)remove columns</button>
<button onclick="restoreCols()">3)restore columns</button>

CSS

#configureGridCF {
            width: 100%;
            overflow: hidden;
            margin-top: 20px;
            background-color: #f3f3f3;
        }

        #fixingDirectionGridLabel {
            margin: 20px;
            border-bottom: 1px solid #ccc;
            padding-bottom: 5px;
        }
        
        .settingsRS p {
            width:100%;
            overflow:hidden;
            margin-bottom:5px;
        }
        .ui-checkbox-container {
            float:left;
            margin-right:5px;
            margin-top: 0.5em;
        }
        .ui-igcheckbox-normal-on {
            top: auto;
            left: auto;
            margin-left: 1px;
            margin-top: 1px;
        }
        .delete-button
        {
            width: 100%;
            font-size: 1em;
            border: solid 1px #777;
            font-family: 'Segoe UI', Arial, sans-serif;
            color: #444;
        }
        .delete-button:hover
        {
            background-color: #d0edfa;
        }

JavaScript

$(function () {
            $("#grid").igGrid({
                columns: [
                    { headerText: "", key: "ID", dataType: "string", width: "100px", template: "<input type='button' onclick='deleteRow(\"${ID}\")' value='Delete row' class='delete-button'/>" },
                    { headerText: "Company Name", key: "CompanyName", dataType: "string", width: "250px" },
                    { headerText: "Contact Name", key: "ContactName", dataType: "string", width: "200px" },
                    { headerText: "Contact Title", key: "ContactTitle", dataType: "string", width: "200px" },
                    { headerText: "Address", key: "Address", dataType: "string", width: "200px" },
                    { headerText: "City", key: "City", dataType: "string", width: "150px" },
                    { headerText: "Country", key: "Country", dataType: "string", width: "150px" }
                ],
                autoGenerateColumns: false,
                dataSource: nwCustomersWithOrders,
                width: "100%",
                height: "400px",
                primaryKey: "ID",
                features: [
                    {
                        name: "ColumnFixing"
                    },
                    {
                        name: "Sorting",
                        columnSettings : [
                            {
                                columnKey: "ID",
                                allowSorting: false
                            }
                        ]
                    },
                    {
                    		name: "ColumnMoving"
                    },
                    {
                        name: "Filtering",
                        mode: "advanced",
                        columnSettings: [
                            {
                                columnKey: "ID",
                                allowFiltering: false
                            }
                        ]
                    }
               ...