ons-action-sheet

Action/bottom sheet that is displayed on top of current screen. This element can either be attached directly to the <body> or dynamically created from a template using the ons.createElement(template, { append: true }) utility function and the <template> tag. The action sheet is useful for displaying a list of options and asking the user to make a decision. A ons-action-sheet-button is provided for this purpose, although it can contain any type of content. It will automatically be displayed as Material Design (bottom sheet) when running on an Android device.

Tutorial

Static action sheet

Onsen UI provides <ons-action-sheet> and <ons-action-sheet-button> elements. Use them to create a dialog that slides from the bottom of the screen to give user options.

You can display or cancel the action sheet by calling its methods show or hide respectively.

Dynamic action sheet

You can also create and open an action sheet dynamically with the method ons.openActionSheet.

This method takes as argument an object where you can define the action sheet’s properties (e.g. id, title) and the buttons inside it.

See also

Name Type Description
title String Optional title of the action sheet. A new element will be created containing this string. Optional.
modifier String The appearance of the action sheet. Optional.
cancelable If this attribute is set the action sheet can be closed by tapping the background or by pressing the back button on Android devices. Optional.
disabled If this attribute is set the action sheet is disabled. Optional.
animation String
default
The animation used when showing and hiding the action sheet. Can be either "none" or "default". Optional.
animation-options Expression Specify the animation’s duration, timing and delay with an object literal. E.g. {duration: 0.2, delay: 1, timing: 'ease-in'}. Optional.
mask-color String
rgba(0, 0, 0, 0.2)
Color of the background mask. Default is "rgba(0, 0, 0, 0.2)". Optional.
visible Boolean Whether the action sheet is visible or not. Optional.
var String Variable name to refer this action sheet. Optional. Works only during initialization.
ons-preshow Expression Allows you to specify custom behavior when the “preshow” event is fired. Optional. Works only during initialization.
ons-prehide Expression Allows you to specify custom behavior when the “prehide” event is fired. Optional. Works only during initialization.
ons-postshow Expression Allows you to specify custom behavior when the “postshow” event is fired. Optional. Works only during initialization.
ons-posthide Expression Allows you to specify custom behavior when the “posthide” event is fired. Optional. Works only during initialization.
ons-destroy Expression Allows you to specify custom behavior when the “destroy” event is fired. Optional. Works only during initialization.
Name Description
title Optional title of the action sheet. A new element will be created containing this string.
animationOptions Specify the animation’s duration, timing and delay with an object literal. E.g. {duration: 0.2, delay: 1, timing: 'ease-in'}.
onDeviceBackButton Back-button handler.
maskColor Color of the background mask. Default is “rgba(0, 0, 0, 0.2)”.
visible Whether the action sheet is visible or not.
disabled Whether the action sheet is disabled or not.
cancelable Whether the action sheet is cancelable or not. A cancelable action sheet can be closed by tapping the background or by pressing the back button on Android devices.
Name Description
material Display a Material Design bottom sheet.
Signature Description
show([options]) Show the action sheet.
hide([options]) Hide the action sheet.
on(eventName, listener) Add an event listener.
once(eventName, listener) Add an event listener that’s only triggered once.
off(eventName, [listener]) Remove an event listener. If the listener is not specified all listeners for the event type will be removed.
show([options]): Promise

Show the action sheet.

Returns:

Parameters
Name Type Description
options Object Parameter object.
options.animation String Animation name. Available animations are "none" and "slide".
options.animationOptions String Specify the animation’s duration, delay and timing. E.g. {duration: 0.2, delay: 0.4, timing: 'ease-in'}.
options.callback Function This function is called after the action sheet has been revealed.
hide([options]): Promise

Hide the action sheet.

Returns: Resolves to the hidden element

Parameters
Name Type Description
options Object Parameter object.
options.animation String Animation name. Available animations are "none" and "slide".
options.animationOptions String Specify the animation’s duration, delay and timing. E.g. {duration: 0.2, delay: 0.4, timing: 'ease-in'}.
options.callback Function This functions is called after the action sheet has been hidden.
on(eventName, listener)

Add an event listener.

Parameters
Name Type Description
eventName String Name of the event.
listener Function Function to execute when the event is triggered.
once(eventName, listener)

Add an event listener that’s only triggered once.

Parameters
Name Type Description
eventName String Name of the event.
listener Function Function to execute when the event is triggered.
off(eventName, [listener])

Remove an event listener. If the listener is not specified all listeners for the event type will be removed.

Parameters
Name Type Description
eventName String Name of the event.
listener Function Function to execute when the event is triggered.

Some Onsen UI components have overlapping event names. For example, ons-carousel and ons-navigator both emit postchange events. Stop overlapping events from propagating to avoid conflicts: document.querySelector('ons-carousel').on('postchange', e => e.stopPropagation()).

Name Description
preshow Fired just before the action sheet is displayed.
postshow Fired just after the action sheet is displayed.
prehide Fired just before the action sheet is hidden.
posthide Fired just after the action sheet is hidden.
dialogcancel Fired when the action sheet is canceled.
preshow

Fired just before the action sheet is displayed.

Parameters
Name Type Description
event Object Event object.
event.actionSheet Object Component object.
event.cancel Function Execute this function to stop the action sheet from being shown.
postshow

Fired just after the action sheet is displayed.

Parameters
Name Type Description
event Object Event object.
event.actionSheet Object Component object.
prehide

Fired just before the action sheet is hidden.

Parameters
Name Type Description
event Object Event object.
event.actionSheet Object Component object.
event.cancel Function Execute this function to stop the action sheet from being hidden.
posthide

Fired just after the action sheet is hidden.

Parameters
Name Type Description
event Object Event object.
event.actionSheet Object Component object.
dialogcancel

Fired when the action sheet is canceled.

Parameters
Name Type Description

Need Help?

If you have any questions, use our Community Forum or talk to us on Discord chat. The Onsen UI team and your peers in the community will work together to help solve your issues.

For bug reports and feature requests use our GitHub Issues page.