dgrid JSFiddle Template

A default JSFiddle with the standard Dojo and dgrid options

by schlomm

HTML

<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/dojo/1.10.0/dijit/themes/claro/claro.css">
<div>
  <div id="onDemandGridContainer" />
</div>
<div id="selectionGridContainer" />

CSS

.foo {
  /* add custom css */
}

JavaScript

require({
  packages: [{
    name: 'dgrid',
    location: '//cdn.rawgit.com/SitePen/dgrid/v0.3.16'
  }, {
    name: 'xstyle',
    location: '//cdn.rawgit.com/kriszyp/xstyle/v0.2.1'
  }, {
    name: 'put-selector',
    location: '//cdn.rawgit.com/kriszyp/put-selector/v0.3.5'
  }]
}, [
  'dojo/_base/declare',
  'dojo/on',
  'dojo/dom-construct',
  'dgrid/OnDemandGrid',
  'dgrid/Selection',
  "dgrid/Keyboard",
  "dgrid/Selection",
  "dgrid/extensions/ColumnResizer",
  "dgrid/editor",
  "dgrid/extensions/DijitRegistry",
  'dojo/store/Memory',
  'dojo/domReady!'
], function(declare, on, domConstruct, OnDemandGrid, SelectionGrid, Keyboard, Selection, ColumnResizer, Editor, DijitRegistry, Memory) {


// Sample Data
  var data = [{
    id: 1,
    name: 'Peter',
    surname: 'Williams'
  }, {
    id: 2,
    name: 'Paul',
    surname: 'McAllen'
  }, {
    id: 3,
    name: 'Mary',
    surname: 'Bright'
  }];
  
//Create store from data  
  var store = new Memory({
    data: data
  });
  
//Create sample very simple samplegrid  
  var myOndemandGrid = new OnDemandGrid({
    columns: [{
      field: 'id',
      label: 'ID'
    }, {
      field: 'name',
      label: 'Name'
    }, {
      field: 'surname',
      label: 'Surname'
    }],
    store: store
  }, 'onDemandGridContainer');


//Create advanced grid with addons
  var selectionGrid = declare([OnDemandGrid, Keyboard, Selection, ColumnResizer, DijitRegistry, Editor]);
  var mySelectionGrid = new selectionGrid({
    columns: [{
      field: 'id',
      label: 'ID'
    }, {
      field: 'name',
      label: 'Name'
    },{
      field: 'surname',
      label: 'Surname'
    }, {
      editor: 'checkbox',
      label: ' ',
      autoSave: true,
      sortable: false,
      renderCell: function(object, value, node) {
        var attrs = {
          type: "checkbox",
          name: "selected",
          tabIndex: -1,
          disabled: false,
          "class": "dgrid-input"
        };
        domConstruct.create("input",...