TimePicker is a drop-down in SpreadJS that can be defined in JavaScript code with the style properties. This drop-down shows a different selection of times, which the developer specifies in terms of minimum, maximum, and step. This gives developers the ability to add a simple time picker to their workbook, which can be useful for creating user input forms. An example of the two different ways to display the time in the TimePicker are shown in the spreadsheet below.

Drop-downs provide a developer the ability to add a drop-down menu with specific properties to cells in a workbook. These drop-down menus don't require any extra code other than simply specifying which one to use for the drop-down menu. SpreadJS has 9 different kinds of drop-downs, and this demo shows how to use the Time Picker. You can use the Time Picker drop-down with the following code : There are also some option items for customizing the TimePicker: max: ITimePickerValue : The maximum value the time picker can display, the value needs the hour, minute and second attributes. min: ITimePickerValue : The minimum value the time picker can display, the value needs the hour, minute and second attributes. step: ITimePickerValue : The granularity the time picker can step through values. formatString: string : Specify the format of the time item. height: number : Specify the container of the time picker's size.
var spreadNS = GC.Spread.Sheets; window.onload = function () { var spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss")); initSpread(spread); }; function createPickerStyle(option) { var timePickerStyle = new GC.Spread.Sheets.Style(); timePickerStyle.cellButtons = [ { imageType: GC.Spread.Sheets.ButtonImageType.dropdown, command: "openTimePicker", useButtonStyle: true, } ]; timePickerStyle.dropDowns = [ { type: GC.Spread.Sheets.DropDownType.timePicker, option: option } ]; return timePickerStyle; } function initSpread(spread) { var sheet = spread.getSheet(0); sheet.suspendPaint(); sheet.setText(1, 3, "Time Picker"); sheet.setStyle(2, 3, createPickerStyle({ min: { hour: 8 }, max: { hour: 19 }, step: { minute: 30 }, formatString: "h:mm AM/PM", })); sheet.setText(1, 7, "Time Picker"); sheet.setStyle(2, 7, createPickerStyle({ min: { hour: 5 }, max: { hour: 20 }, step: { minute: 30 }, formatString: "h:mm:ss", height: 350 })); sheet.resumePaint(); spread.commandManager().execute({ cmd: "openTimePicker", row: 2, col: 3, sheetName: "Sheet1" }); }
<!doctype html> <html style="height:100%;font-size:14px;"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <link rel="stylesheet" type="text/css" href="$DEMOROOT$/en/purejs/node_modules/@mescius/spread-sheets/styles/gc.spread.sheets.excel2013white.css"> <script src="$DEMOROOT$/en/purejs/node_modules/@mescius/spread-sheets/dist/gc.spread.sheets.all.min.js" type="text/javascript"></script> <script src="$DEMOROOT$/spread/source/js/license.js" type="text/javascript"></script> <script src="app.js" type="text/javascript"></script> <link rel="stylesheet" type="text/css" href="styles.css"> </head> <body> <div class="sample-tutorial"> <div id="ss" style="width:100%; height: 100%"></div> </div> </body> </html>
.sample-tutorial { position: relative; height: 100%; overflow: hidden; } body { position: absolute; top: 0; bottom: 0; left: 0; right: 0; }