This section covers creating spreadsheets with custom headers and how to change them programmatically. By default, the user can change the header titles using the context menu or with a long click.



The following methods are available to update the headers programmatically.
getHeader Get the header title by column number.
getHeader(column: Number) : void
@Param {mixed} - get the header title by column number starting on zero.
getHeaders Get all headers as an Array of strings or a string separated by commas.
getHeader(getAsArray: Boolean) : void
@param {mixed} - get all headers a string or as an Array.
setHeader Set a custom header title.
setHeader(colNumber: Number, newValue: String) : void
@Param {number} - column number starting on zero
@Param {string} - new title

Initial Settings

The header titles and tooltip can be defined through the attributes title and tooltip within the column settings as follow:

jspreadsheet(document.getElementById('spreadsheet'), {
    workshets: [{
        columns: [
                type: 'text',
                title: 'Country',
                tooltip: 'This is the country',
                width: '300px',

Available Events

onchangeheaderWhen changing the header title.
onchangeheader(worksheet: Object, column: Number, newValue: String, oldValue: String) : void


Updates to the headers

The following example starts the spreadsheet with basic headers with the option to update the titles programmatically.

Change the headers programmatically

Source code

<script src="https://jspreadsheet.com/v8/jspreadsheet.js"></script>
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<link rel="stylesheet" href="https://jspreadsheet.com/v8/jspreadsheet.css" type="text/css" />

<div id="spreadsheet"></div>

var data = [
    ['BR', 'Cheese', 1],
    ['CA', 'Apples', 0],
    ['US', 'Carrots', 1],
    ['GB', 'Oranges', 0],

var table = jspreadsheet(document.getElementById('spreadsheet'), {
    worksheets: [{
        data: data,
        columns: [
                type: 'autocomplete',
                title: 'Country',
                tooltip: 'Country of origin',
                width: '200px',
                url: '/jspreadsheet/countries'
                type: 'dropdown',
                title: 'Food',
                tooltip: 'Category of food',
                width: '100px',
                source: ['Apples','Bananas','Carrots','Oranges','Cheese']
                type: 'checkbox',
                title: 'Stock',
                tooltip: 'Quantity on stock',
                width: '100px'
                type: 'number',
                title: 'Price',
                tooltip: 'Retail pricing',
                width: '100px'

<select id='col'>
<option value="0">Column 0</option>
<option value="1">Column 1</option>
<option value="2">Column 2</option>
<option value="3">Column 3</option>

<input type='button' value='Set' onclick="table[0].setHeader(document.getElementById('col').value)" />
<input type='button' value='Get' onclick="table[0].getHeader(document.getElementById('col').value)" />