JavaScript/jQuery Gantt - contextMenu.items

Configures context menu item settings.

The context menu contains a set of default commands: 'addTask', 'taskDetails', and 'deleteTask'. Use the contextMenu property to recreate the context menu items.

DevExtreme Gantt - Default Context Menu

To add a predefined item to the context menu, add its name and optional settings (for example, 'visible', 'text', and 'icon') to the items collection.

JavaScript
  • $(function () {
  • $("#gantt").dxGantt({
  • contextMenu: {
  • items: [
  • "addTask",
  • "deleteTask",
  • {
  • text: "Zoom",
  • items: [
  • "zoomIn",
  • "zoomOut"
  • ]
  • }
  • ]
  • }
  • //...
  • });
  • });

DevExtreme Gantt - Predefined Context Menu Items

Custom Items

To add a custom context menu item, specify its text and optional settings (for example, name or category). Use the customCommand event to handle clicks on custom context menu items.

JavaScript
  • $(function () {
  • $("#gantt").dxGantt({
  • contextMenu: {
  • items: [
  • {
  • text: "Category",
  • items:[
  • {
  • text: "Item 1",
  • name: "item1"
  • },
  • {
  • text: "Item 2",
  • name: "item2"
  • },
  • {
  • text: "Item 3",
  • name: "item3"
  • }
  • ]
  • }
  • // ...
  • ]
  • }
  • onCustomCommand: onCustomCommandClick
  • // ...
  • });
  • });
  • function onCustomCommandClick(e) {
  • if(e.name == 'item1') {
  • // your code
  • }
  • }

Result:

DevExtreme Gantt - Custom Context Menu Items

beginGroup

Specifies whether a group separator is displayed over the item.

Type:

Boolean

You can add group separators only between items in submenus.

closeMenuOnClick

Specifies if a menu is closed when a user clicks the item. Does not apply to the root items.

Type:

Boolean

Default Value: true

disabled

Specifies whether the menu item responds to user interaction.

Type:

Boolean

Default Value: false

icon

Specifies the menu item's icon.

Type:

String

This property accepts one of the following:

items

Specifies nested menu items.

Nested menu items should have the same structure as the first-level menu items.

name

Specifies the context menu item name.

JavaScript
  • $(function () {
  • $("#gantt").dxGantt({
  • contextMenu: {
  • items: [
  • {
  • text: "Category",
  • items:[
  • {
  • text: "Item 1",
  • name: "item1"
  • },
  • {
  • text: "Item 2",
  • name: "item2"
  • },
  • {
  • text: "Item 3",
  • name: "item3"
  • }
  • ]
  • }
  • // ...
  • ]
  • }
  • onCustomCommand: onCustomCommandClick
  • // ...
  • });
  • });
  • function onCustomCommandClick(e) {
  • if(e.name == 'item1') {
  • // your code
  • }
  • }

selectable

Specifies whether or not a user can select a menu item.

Type:

Boolean

Default Value: false

selected

Specifies whether or not the item is selected.

Type:

Boolean

Default Value: false

template

Specifies a template that should be used to render this item only.

Type:

template

Template Data:

CollectionWidgetItem

The item object to be rendered.

The following types of the specified value are available.

  • Assign a string containing the name of the required template.
  • Assign a jQuery object of the template's container.
  • Assign a DOM Node of the template's container.
  • Assign a function that returns the jQuery object or a DOM Node of the template's container.

The following example adds a custom item to the component. Note that Angular and Vue use custom templates instead of the template property. In React, specify the render or component properties.

index.js
  • $(function() {
  • $("#ganttContainer").dxGantt({
  • // ...
  • contextMenu: {
  • items: [
  • {
  • // ...
  • template: '<div>Custom Item</div>'
  • }
  • ]
  • }
  • });
  • });
See Also

text

Specifies the text inserted into the item element.

Type:

String

If you use both this property and a template, the template overrides the text.

visible

Specifies whether or not the menu item is visible.

Type:

Boolean

Default Value: true