experiment_id: web-retrieval-v1
fixture_id: /demos/webcomponent-grid-editing-inline-row-data
mode: provenance
representation: html
origin_response_id: ab13b2c2e740006c1aa1eff6f135ae5a
version: 2026-10-21
version_created_at_utc: 2026-10-21T20:42:35.589Z
version_nonce: 4107c169c510034004388e1cfb7545fd
generated_at_utc: 2026-11-15T01:34:55.982Z
response_nonce: f6e6ccefc187215ee79130d3e83b7361

Editing Data by Row

113 of 125
Add the editor-controls attribute to the <zing-grid> tag to display controls for editing and deleting rows.
Result Full HTML CSS JS
Edit Download

Full Code

<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <title>ZingGrid: Simple Grid</title>
  <script nonce="undefined" src="https://cdn.zinggrid.com/zinggrid.min.js"></script>
  <style>
    .zg-body {
      background: #e6e6e6;
    }

    .zg-body zing-grid {
      /* default Liverpool red CSS variable */
      --zg-caption-background: #e31b23;
      --zg-row-body-background_hover: #F6EB61;
    }

    zing-grid[loading] {
      height: 423px;
    }
  </style>
</head>

<body class="zg-body">
  <zing-grid caption="Top LiverPool Forwards" sort src="https://storage.googleapis.com/zinggrid-pwa.appspot.com/liverpool_forwards.json" editor>

    <zg-colgroup>
      <zg-column index="playerImg" header=" " width="100" sort="disabled" editor="false" type="image" type-image-mask="circle" type-image-alt="Player Img N/A"></zg-column>
      <zg-column index="firstName"></zg-column>
      <zg-column index="lastName"></zg-column>
      <zg-column index="number" type="range" type-range-step="1"></zg-column>
      <zg-column index="position" sort="disabled" type="select" type-select-options="Forward, Midfielder"></zg-column>
      <zg-column type="editor"></zg-column>
      <zg-column type="remover"></zg-column>
    </zg-colgroup>
  </zing-grid>
  <script>
    ZingGrid.setLicense(['26ccbfec16b8be9ee98c7d57bee6e498']);
  </script>
</body>

</html>
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>ZingGrid: Simple Grid</title>
    <script src="https://cdn.zinggrid.com/zinggrid.min.js"></script>
  </head>
  <body class="zg-body">
    <zing-grid
      caption="Top LiverPool Forwards"
      sort
      src="https://storage.googleapis.com/zinggrid-pwa.appspot.com/liverpool_forwards.json"
      editor>
    
      <zg-colgroup>
        <zg-column 
        	index="playerImg"
          header=" "
          width="100"
          sort="disabled"
          editor="false"
          type="image"
          type-image-mask="circle"
          type-image-alt="Player Img N/A"></zg-column>
        <zg-column index="firstName"></zg-column>
        <zg-column index="lastName"></zg-column>
        <zg-column index="number" type="range" type-range-step="1"></zg-column>
        <zg-column 
          index="position" 
          sort="disabled" 
          type="select"
		      type-select-options="Forward, Midfielder"></zg-column>
        <zg-column type="editor"></zg-column>
        <zg-column type="remover"></zg-column>
      </zg-colgroup>
    </zing-grid>
  </body>
</html>
.zg-body { background:#e6e6e6; }

.zg-body zing-grid {
 /* default Liverpool red CSS variable */
 --zg-caption-background: #e31b23;
 --zg-row-body-background_hover: #F6EB61;
}
// No JS code

Interested in this demo? Modify it to your needs in ZingSoft Studio, our testing sandbox. It's free to sign up, and you can come back and edit at any time!

Edit in Studio

Demo Gallery