JavaScript/jQuery ContextMenu Options
accessKey
The value of this option will be passed to the accesskey
attribute of the HTML element that underlies the widget.
activeStateEnabled
A Boolean value specifying whether or not the widget changes its state when interacting with a user.
animation
closeOnOutsideClick
Event (jQuery or EventObject)
The event that caused widget closing. It is a dxEvent or a jQuery.Event when you use jQuery.
The function passed to this option enables you to specify a custom condition for closing the widget. For instance, you can prevent closing until a user clicks a certain element.
jQuery
$(function () { $("#contextMenuContainer").dxContextMenu({ // ... closeOnOutsideClick: function(e) { return e.target === $("#someElement").get()[0]; } }); });
Angular
import { DxContextMenuModule } from 'devextreme-angular'; // ... export class AppComponent { // ... closeOnOutsideClick (e) { return e.target === document.getElementById("someElement"); } } @NgModule({ imports: [ // ... DxContextMenuModule ], // ... })
<dx-context-menu ... (closeOnOutsideClick)="closeOnOutsideClick($event)"> </dx-context-menu>
dataSource
This option accepts one of the following.
Array of objects
A simple JavaScript array containing a collection of plain objects.URL
A URL to JSON data or to a service returning data in JSON format.DataSource or its configuration object
A DataSource is an object that provides a handy API for data processing. A DataSource is a stateful object, which means that it saves data processing settings and applies them each time data is loaded. All underlying data access logic of a DataSource is isolated in a Store. A Store provides an API for reading and modifying data. Unlike the DataSource, a Store is a stateless object.
.
, ,
, :
, [
, and ]
. Their presence may cause issues in the widget's operation.If the data source is specified using the dataSource option, use the items option only for reading. Updating data items using the items option may cause unexpected results.
To display widget items, a default template can be used. This template is based on the data source fields that are listed in the Default Item Template section of the widget's API.
disabledExpr
Specifies the name of the data source item field whose value defines whether or not the corresponding widget item is disabled.
elementAttr
Specifies the attributes to be attached to the widget's root element.
You can configure this option in an ASP.NET MVC Control as follows:
@(Html.DevExtreme().WidgetName() .ElementAttr("class", "class-name") // ===== or ===== .ElementAttr(new { @id = "elementId", @class = "class-name" }) // ===== or ===== .ElementAttr(new Dictionary<string, object>() { { "id", "elementId" }, { "class", "class-name" } }) )
@(Html.DevExtreme().WidgetName() _ .ElementAttr("class", "class-name") ' ===== or ===== .ElementAttr(New With { .id = "elementId", .class = "class-name" }) ' ===== or ===== .ElementAttr(New Dictionary(Of String, Object) From { { "id", "elementId" }, { "class", "class-name" } }) )
height
This option accepts a value of one of the following types:
Number
The height in pixels.String
A CSS-accepted measurement of height. For example,"55px"
,"80%"
,"auto"
,"inherit"
.Function
A function returning either of the above. For example:JavaScriptheight: function() { return window.innerHeight / 1.5; }
items
Array<dxContextMenuItemTemplate>
To display menu items, a default template can be used. This template is based on certain fields of the item object. Refer to the Default Item Template section to learn which fields are taken into account when creating a default template for items. Alternatively, you can implement a custom item template.
onContentReady
A handler for the contentReady event. Executed when the widget's content is ready. This handler may be executed multiple times during the widget's lifetime depending on the number of times its content changes.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only when using Knockout. |
onDisposing
A handler for the disposing event. Executed when the widget is removed from the DOM using the remove(), empty(), or html() jQuery methods only.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
onHidden
A handler for the hidden event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
onHiding
A handler for the hiding event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
|
cancel |
Allows you to cancel widget hiding. |
onInitialized
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
You cannot access widget elements in this handler because it is executed before they are ready. Use the onContentReady handler instead.
onItemClick
A handler for the itemClick event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. |
|
model |
The model data. Available only if you use Knockout. |
|
itemData |
The clicked item's data. |
|
itemElement |
The item's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
itemIndex |
The clicked item's index. |
|
jQueryEvent |
Use 'event' instead. The jQuery event that caused the handler execution. Deprecated in favor of the event field. |
|
event | Event (jQuery or EventObject) |
The event that caused the handler execution. It is a dxEvent or a jQuery.Event when you use jQuery. |
onItemContextMenu
A handler for the itemContextMenu event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
|
itemData |
The item's data. |
|
itemElement |
The item's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
itemIndex |
The item's index. |
|
jQueryEvent |
Use 'event' instead. The jQuery event that caused the handler execution. Deprecated in favor of the event field. |
|
event | Event (jQuery or EventObject) |
The event that caused the handler execution. It is a dxEvent or a jQuery.Event when you use jQuery. |
onItemRendered
A handler for the itemRendered event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
|
itemData |
The current item's data. |
|
itemElement |
The item's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
itemIndex |
The current item's index. |
onOptionChanged
Name | Type | Description |
---|---|---|
name |
The option's short name. |
|
model |
The model data. Available only if you use Knockout. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
component |
The widget's instance. |
|
fullName |
The option's full name. |
|
value | any |
The option's new value. |
onPositioning
A handler for the positioning event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
|
jQueryEvent |
Use 'event' instead. The jQuery event that caused the handler execution. Deprecated in favor of the event field. |
|
event | Event (jQuery or EventObject) |
The event that caused the handler execution. It is a dxEvent or a jQuery.Event when you use jQuery. |
position |
The positioning options. |
onSelectionChanged
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
|
addedItems | Array<any> |
The data of the items that have been selected. |
removedItems | Array<any> |
The data of the items whose selection has been canceled. |
onShowing
A handler for the showing event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
|
cancel |
Allows you to cancel widget showing. |
onShown
A handler for the shown event.
Name | Type | Description |
---|---|---|
component |
The widget's instance. |
|
element |
The widget's container. It is an HTML Element or a jQuery Element when you use jQuery. |
|
model |
The model data. Available only if you use Knockout. |
position
An object defining widget positioning options.
rtlEnabled
When this option is set to true, the widget text flows from right to left, and the layout of elements is reversed. To switch the entire application/site to the right-to-left representation, assign true to the rtlEnabled field of the object passed to the DevExpress.config(config) method.
DevExpress.config({ rtlEnabled: true });
See Also
- Right-to-Left Support Demo: DataGrid | Navigation Widgets | Editors
selectedExpr
Specifies the name of the data source item field whose value defines whether or not the corresponding widget items is selected.
selectionMode
To select an item on click and to visually display the selection, set the selectByClick option to true. Note that in this case the selectionMode should be 'single'.
When using the widget as an ASP.NET MVC Control, specify this option using the MenuSelectionMode
enum. This enum accepts the following values: Single
and None
.
showSubmenuMode
When using the widget as an ASP.NET MVC Control, you can specify this option using the ShowSubmenuMode
enum. This enum accepts the following values: OnHover
and OnClick
.
submenuDirection
By default, the submenus of the context menu are displayed so that they are visible totally, based on the widget location on the page. Use the submenuDirection option to display submenus to the left or to the right from the context menu.
When using the widget as an ASP.NET MVC Control, specify this option using the ContextMenuSubmenuDirection
enum. This enum accepts the following values: Left
, Right
and Auto
.
tabIndex
The value of this option will be passed to the tabindex
attribute of the HTML element that underlies the widget.
target
This option accepts one of the following values.
A CSS selector, or a jQuery selector if you use jQuery
target: '#targetElement';
A jQuery wrapper
target: $('#targetElement');
A DOM element
target: document.getElementById('#targetElement');
To align the ContextMenu against this element, use the position option.
width
This option accepts a value of one of the following types:
Number
The width in pixels.String
A CSS-accepted measurement of width. For example,"55px"
,"80%"
,"auto"
,"inherit"
.Function
A function returning either of the above. For example:JavaScriptwidth: function() { return window.innerWidth / 1.5; }
If you have technical questions, please create a support ticket in the DevExpress Support Center.