Configuration

An object defining configuration options for the Popup widget.

accessKey

Specifies the shortcut key that sets focus on the widget.

Type:

String

Default Value: null

The value of this option will be passed to the accesskey attribute of the HTML element that underlies the widget.

animation

Configures widget visibility animations. This object contains two fields: show and hide.

Type:

Object

Default Value: { show: { type: 'pop', duration: 300, from: { scale: 0.55 } }, hide: { type: 'pop', duration: 300, to: { opacity: 0, scale: 0.55 }, from: { opacity: 1, scale: 1 } } }
Default for android below version 4: { show: { type: 'fade', duration: 400 }, hide: { type: 'fade', duration: 400, to: { opacity: 0 }, from: { opacity: 1 } } }
Default for iOS: { show: { type: 'slide', duration: 400, from: { position: { my: 'top', at: 'bottom', of: window } }, to: { position: { my: 'center', at: 'center', of: window } } }, hide: { type: 'slide', duration: 400, from: { position: { my: 'center', at: 'center', of: window } }, to: { position: { my: 'top', at: 'bottom', of: window } } } }
NOTE
To specify in which position the widget will be shown and from which it will be hidden, use the position option.
Show Example:
AngularJS
Knockout
jQuery

buttons

Deprecated

Use the toolbarItems option instead.

Specifies items displayed on the top or bottom toolbar of the popup window.

Type:

Array<Object>

closeOnBackButton

A Boolean value specifying whether or not the widget is closed if a user presses the Back hardware button.

Type:

Boolean

Default Value: true

closeOnOutsideClick

A Boolean value specifying whether or not the widget is closed if a user clicks outside of the overlapping window.

Type:

Boolean

|

function

Function parameters:
event:

Event (jQuery or dxEvent)

The event that caused widget closing. It is a dxEvent or a jQuery.Event when you use jQuery.

Return Value:

Boolean

The required option value.

Default Value: false

The function passed to this option enables you to specify a custom condition for widget closing. For instance, you can prevent closing until a user clicks a certain element.

JavaScript
var widgetOptions = {
    // ...
    closeOnOutsideClick: function(e) {
        return e.target === $("#someElement").get()[0];
    }
}

contentTemplate

A template to be used for rendering widget content.

Type:

template

Function parameters:
contentElement:

Element (jQuery or HTML)

The widget content's container.

Return Value:

String

|

jQuery

A template name or container.

Default Value: 'content'

This option enables you to render widget contents depending on field values of the bound data model.

HTML
<div data-options="dxTemplate: { name:'myContent' }">
    <h1 data-bind="text: title"></h1>
    <p>Full name: <span data-bind="text: fullName"></span></p>
</div>
NOTE
A binding context of a content template is the bound view model. So, you can bind template elements to the view model's fields directly (see the code above). To access another binding context within a content template, use the Knockout/AngularJS binding variables.

deferRendering

Specifies whether widget content is rendered when the widget is shown or when rendering the widget.

Type:

Boolean

Default Value: true

If this option is set to true, widget content is rendered when showing the widget. Otherwise, widget content is rendered when rendering the widget.

disabled

Specifies whether the widget responds to user interaction.

Type:

Boolean

Default Value: false

dragEnabled

Specifies whether or not to allow a user to drag the popup window.

Type:

Boolean

Default Value: false
Default for desktop: true

A user can drag the popup window by the title. Therefore, this option makes sense if the showTitle option is set to true.

NOTE
Dragging is possible only if the "height: 100%" style setting is applied to the html element and "min-height: 100%" - to the body element.
HTML
<html style="height: 100%;">
    <head>
    . . .
    </head>
    <body style="min-height: 100%;">
    . . .
    </body>
</html>
Show Example:
AngularJS
Knockout
jQuery

elementAttr

Specifies the attributes to be attached to the widget's root element.

Type:

Object

Default Value: {}

You can configure this option in an ASP.NET MVC Control as follows:

Razor C#
Razor VB
@(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" }
    })
)

focusStateEnabled

Specifies whether the widget can be focused using keyboard navigation.

Type:

Boolean

Default Value: false
Default for generic: true

fullScreen

A Boolean value specifying whether or not to display the widget in full-screen mode.

Type:

Boolean

Default Value: false

height

The height of the widget in pixels.

Type:

Number

|

String

|

function

Return Value:

Number

|

String

The widget's height.

Default Value: function() { return $(window).height() * 0.8 }

This option accepts a value of one of the following types.

  • Number
    The height of the widget 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:

    JavaScript
    height: function() {
        return window.innerHeight / 1.5;
    }

hint

Specifies text for a hint that appears when a user pauses on the widget.

Type:

String

Default Value: undefined

hoverStateEnabled

Specifies whether the widget changes its state when a user pauses on it.

Type:

Boolean

Default Value: false

maxHeight

Specifies the maximum height the widget can reach while resizing.

Type:

Number

|

String

|

function

Return Value:

Number

|

String

The maximum height value.

Default Value: null

The option can hold a value of the following types.

  • numeric - the height in pixels
  • string - a CSS measurement of the height (e.g., "55px", "80%", "auto" and "inherit")
  • function - the function returning the height (e.g., width:function(){ return baseWidth - 10 + "%"; })

maxWidth

Specifies the maximum width the widget can reach while resizing.

Type:

Number

|

String

|

function

Return Value:

Number

|

String

The maximum width value.

Default Value: null

The option can hold a value of the following types.

  • numeric - the width in pixels
  • string - a CSS measurement of the width (e.g., "55px", "80%", "auto" and "inherit")
  • function - the function returning the width (e.g., width:function(){ return baseWidth - 10 + "%"; })

minHeight

Specifies the minimum height the widget can reach while resizing.

Type:

Number

|

String

|

function

Return Value:

Number

|

String

The minimum height value.

Default Value: null

The option can hold a value of the following types.

  • numeric - the height in pixels
  • string - a CSS measurement of the height (e.g., "55px", "80%", "auto" and "inherit")
  • function - the function returning the height (e.g., width:function(){ return baseWidth - 10 + "%"; })

minWidth

Specifies the minimum width the widget can reach while resizing.

Type:

Number

|

String

|

function

Return Value:

Number

|

String

The minimum width value.

Default Value: null

The option can hold a value of the following types.

  • numeric - the width in pixels
  • string - a CSS measurement of the width (e.g., "55px", "80%", "auto" and "inherit")
  • function - the function returning the width (e.g., width:function(){ return baseWidth - 10 + "%"; })

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.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only when using Knockout.

Default Value: null

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.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if you use Knockout.

Default Value: null

onHidden

A handler for the hidden event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

Default Value: null

Assign a function to perform a custom action after the widget is hidden.

Show Example:
AngularJS
Knockout
jQuery

onHiding

A handler for the hiding event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

cancel:

Boolean

Allows you to cancel overlay hiding.

Default Value: null

Assign a function to perform a custom action before hiding the widget.

Show Example:
AngularJS
Knockout
jQuery

onInitialized

A handler for the initialized event. Executed only once, after the widget is initialized.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

Default Value: null

You cannot access widget elements in this handler because it is executed before they are ready. Use the onContentReady handler instead.

onOptionChanged

A handler for the optionChanged event. Executed after an option of the widget is changed.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

name:

String

The option's short name.

fullName:

String

The option's full name.

value: any

The option's new value.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if you use Knockout.

Default Value: null

onResize

A handler for the resize event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

Default Value: null

Assign a function to perform a custom action each time the widget is resized by one pixel.

onResizeEnd

A handler for the resizeEnd event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

Default Value: null

Assign a function to perform a custom action after resizing has been completed.

onResizeStart

A handler for the resizeStart event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

Default Value: null

Assign a function to perform a custom action after resizing has been finished.

onShowing

A handler for the showing event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

Default Value: null

Assign a function to perform a custom action before showing the widget.

Show Example:
AngularJS
Knockout
jQuery

onShown

A handler for the shown event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

Default Value: null

Assign a function to perform a custom action after the widget is shown.

Show Example:
AngularJS
Knockout
jQuery

onTitleRendered

A handler for the titleRendered event.

Type:

function

Function parameters:
e:

Object

Information about the event.

Object structure:
component:

Object

The widget's instance.

element:

Element (jQuery or HTML)

The widget's container.

model:

Object

The model data. Available only if Knockout is used.

titleElement:

Element (jQuery or HTML)

The title's container.

Default Value: null

Assign a function to perform a custom action after a collection item title is rendered.

position

An object defining widget positioning options.

Default Value: { my: 'center', at: 'center', of: window }
Default for windows phone 8: { my: 'top center', at: 'top center', of: window, offset: '0 0' }
NOTE
The position option also specifies the final Popup position used for showing animation and the initial position used for hiding animation.
Show Example:
AngularJS
Knockout
jQuery

resizeEnabled

Specifies whether or not an end user can resize the widget.

Type:

Boolean

Default Value: false

rtlEnabled

Switches the widget to a right-to-left representation.

Type:

Boolean

Default Value: false

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.

JavaScript
DevExpress.config({
    rtlEnabled: true
});

shading

A Boolean value specifying whether or not the main screen is inactive while the widget is active.

Type:

Boolean

Default Value: true

Show Example:
AngularJS
Knockout
jQuery

shadingColor

Specifies the shading color.

Type:

String

Default Value: ''

This option makes sense only if the shading option is set to true.

showCloseButton

Specifies whether or not the widget displays the Close button.

Type:

Boolean

Default Value: false
Default for desktop: true
NOTE
The option makes sense only if the showTitle option is set to true.

showTitle

A Boolean value specifying whether or not to display the title in the popup window.

Type:

Boolean

Default Value: true

tabIndex

Specifies the number of the element when the Tab key is used for navigating.

Type:

Number

Default Value: 0

The value of this option will be passed to the tabindex attribute of the HTML element that underlies the widget.

title

The title in the overlay window.

Type:

String

Default Value: ''
NOTE
If the title option is specified, the titleTemplate option value is ignored.

titleTemplate

A template to be used for rendering the widget title.

Type:

template

Function parameters:
titleElement:

Element (jQuery or HTML)

The title's container.

Return Value:

String

|

DOM Node

|

jQuery

A template name or container.

Default Value: 'title'

This option enables you to render the widget title depending on field values of the bound data model.

HTML
<div data-options="dxTemplate: { name:'myTitle' }">
    <h3><span data-bind="text: title"></span> info</h3>
</div>
NOTE
A binding context of a title template is the bound view model. So, you can bind template elements to the view model's fields directly (see the code above). To access another binding context within a title template, use the Knockout/AngularJS binding variables.
NOTE
The titleTemplate option makes sense if the title option is undefined.

toolbarItems

Specifies items displayed on the top or bottom toolbar of the popup window.

Type:

Array<Object>

visible

A Boolean value specifying whether or not the widget is visible.

Type:

Boolean

Default Value: false

You can show and hide the widget by changing the value of an observable variable passed to this option.

Show Example:
AngularJS
Knockout
jQuery

width

The widget width in pixels.

Type:

Number

|

String

|

function

Return Value:

Number

|

String

The widget width.

Default Value: function() {return $(window).width() * 0.8 }
Default for windows 8: function() { return $(window).width(); }

This option accepts a value of one of the following types.

  • Number
    The width of the widget 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:

    JavaScript
    width: function() {
        return window.innerWidth / 1.5;
    }