This section describes members used to manipulate a UI component.
Postpones rendering that can negatively affect performance until the endUpdate() method is called.
The beginUpdate() and endUpdate() methods reduce the number of renders in cases where extra rendering can negatively affect performance.
See AlsoResets editor values to their default values.
Specifies the device-dependent default configuration properties for this component.
Parameters:The component's default device properties.
Object structure:
Name Type Description device |Device parameters.
When you specify a function, get information about the current device from the argument. Return true if the properties should be applied to the device.
Options to be applied.
defaultOptions is a static method that the UI component class supports. The following code demonstrates how to specify default properties for all instances of the Form UI component in an application executed on the desktop.
jQueryDevExpress.ui.dxForm.defaultOptions({ device: { deviceType: "desktop" }, options: { // Here go the Form properties } });Angular
import Form, { Properties } from "devextreme/ui/form"; // ... export class AppComponent { constructor () { Form.defaultOptions<Properties>({ device: { deviceType: "desktop" }, options: { // Here go the Form properties } }); } }Vue
<template> <div> <DxForm id="form1" /> <DxForm id="form2" /> </div> </template> <script> import DxForm from "devextreme-vue/form"; import Form from "devextreme/ui/form"; Form.defaultOptions({ device: { deviceType: "desktop" }, options: { // Here go the Form properties } }); export default { components: { DxForm } } </script>React
import dxForm from "devextreme/ui/form"; import Form from "devextreme-react/form"; dxForm.defaultOptions({ device: { deviceType: "desktop" }, options: { // Here go the Form properties } }); export default function App() { return ( <div> <Form id="form1" /> <Form id="form2" /> </div> ) }
You can also set rules for multiple device types:
jQueryconst devicesConfig = [ { deviceType: 'desktop' }, { deviceType: 'tablet' }, { deviceType: 'phone' }, ]; devicesConfig.forEach(deviceConfig => { DevExpress.ui.dxForm.defaultOptions({ device: deviceConfig, options: { // Here go the Form properties } }); });Angular
import Form, { Properties } from "devextreme/ui/form"; // ... export class AppComponent { constructor () { const devicesConfig = [ { deviceType: 'desktop' }, { deviceType: 'tablet' }, { deviceType: 'phone' }, ]; devicesConfig.forEach(deviceConfig => { Form.defaultOptions<Properties>({ device: deviceConfig, options: { // Here go the Form properties } }); }); } }Vue
<template> <div> <DxForm /> </div> </template> <script> import DxForm from "devextreme-vue/form"; import Form from "devextreme/ui/form"; const devicesConfig = [ { deviceType: 'desktop' }, { deviceType: 'tablet' }, { deviceType: 'phone' }, ]; devicesConfig.forEach(deviceConfig => { Form.defaultOptions({ device: deviceConfig, options: { // Here go the Form properties } }); }); export default { components: { DxForm } } </script>React
import dxForm from "devextreme/ui/form"; import Form from "devextreme-react/form"; const devicesConfig = [ { deviceType: 'desktop' }, { deviceType: 'tablet' }, { deviceType: 'phone' }, ]; devicesConfig.forEach(deviceConfig => { dxForm.defaultOptions({ device: deviceConfig, options: { // Here go the Form properties } }); }); export default function App() { return ( <div> <Form /> </div> ) }
Disposes of all the resources allocated to the Form instance.
jQueryAfter calling this method, remove the DOM element associated with the UI component:
$("#myForm").dxForm("dispose"); $("#myForm").remove();Angular
Use conditional rendering instead of this method:
<dx-form ... *ngIf="condition"> </dx-form>Vue
Use conditional rendering instead of this method:
<template> <DxForm ... v-if="condition"> </DxForm> </template> <script> import DxForm from 'devextreme-vue/form'; export default { components: { DxForm } } </script>React
Use conditional rendering instead of this method:
import React from 'react'; import Form from 'devextreme-react/form'; function DxForm(props) { if (!props.shouldRender) { return null; } return ( <Form ... > </Form> ); } class App extends React.Component { render() { return ( <DxForm shouldRender="condition" /> ); } } export default App;
Gets the root UI component element.
Refreshes the UI component after a call of the beginUpdate() method.
The beginUpdate() and endUpdate() methods reduce the number of renders in cases where extra rendering can negatively affect performance.
See AlsoSets focus on the UI component.
Gets a button's instance.
Gets an editor instance. Takes effect only if the form item is visible.
Return Value: Editor | undefined
The editor instance.
The following code shows how to get an editor of an item in a group:
var form = $(function () { $("#formContainer").dxForm({ formData: { firstName: "John", lastName: "Heart", phone: "+1(213) 555-9392", email: "jheart@dx-email.com" }, items: ["firstName", "lastName", { itemType: "group", caption: "Contacts", items: ["phone", "email"] }] }).dxForm("instance"); $("#buttonContainer").dxButton({ text: "Customize Phone Editor", onClick: function (e) { var editor = form.getEditor("phone"); // Customizations go here } }); });See Also
Gets the instance of a UI component found using its DOM node.
Parameters:The UI component's container.
The UI component's instance.
getInstance is a static method that the UI component class supports. The following code demonstrates how to get the Form instance found in an element with the myForm
ID:
// Modular approach import Form from "devextreme/ui/form"; ... let element = document.getElementById("myForm"); let instance = Form.getInstance(element) as Form; // Non-modular approach let element = document.getElementById("myForm"); let instance = DevExpress.ui.dxForm.getInstance(element);See Also
Gets the UI component's instance. Use it to access other methods of the UI component.
This UI component's instance.
Gets a form item's configuration.
Parameters:An item's name or path without spaces if the item is in a group or a tab.
The path may include the group's name or caption or the tab's title.
Return Value: any
The form item's configuration.
Updates the values of several item properties.
Parameters:An item's name or path without spaces if the item is in a group or a tab.
The path may include the group's name or caption or the tab's title.
Options and their new values.
When you modify an item, the Form also refreshes all other items in its group. If an item is not in a group, the whole Form is refreshed. To update only your chosen items, wrap them into a separate group.
When you call this method, Form rerenders the layout. As a result, all editors are re-initialized and their settings return to the initial
editorOptionsconfiguration.
See AlsoUpdates the value of a single item option.
Parameters:An item's name or path without spaces if the item is in a group or a tab.
The path may include the group's name or caption or the tab's title.
The option's name.
value: any
The new option value.
jQueryThe following code shows how to call this method for an item organized in a group.
$(function () { const form = $("#formContainer").dxForm({ formData: { firstName: "John", lastName: "Heart", phone: "+1(213) 555-9392", email: "jheart@dx-email.com" }, items: ["firstName", "lastName", { itemType: "group", caption: "Contacts", name: "groupName", items: ["phone", "email"] }] }).dxForm("instance"); // ... form.itemOption("groupName.phone", "visible", false); // ==== or ==== form.itemOption("Contacts.phone", "visible", false); });
When you modify an item, the Form also refreshes all other items in its group. If an item is not in a group, the whole Form is refreshed. To update only your chosen items, wrap them into a separate group.
When you call this method, Form rerenders the layout. As a result, all editors are re-initialized and their settings return to the initial
editorOptionsconfiguration.
See AlsoDetaches all event handlers from a single event.
The object for which this method is called.
Detaches a particular event handler from a single event.
Parameters:The event's name.
The event's handler.
The object for which this method is called.
Subscribes to an event.
Parameters:The event's name.
The event's handler.
The object for which this method is called.
Use this method to subscribe to one of the events listed in the Events section.
See AlsoSubscribes to events.
Parameters:Events with their handlers: { "eventName1": handler1, "eventName2": handler2, ...}
The object for which this method is called.
Use this method to subscribe to several events with one method call. Available events are listed in the Events section.
See AlsoGets the value of a single property.
Parameters:The property's name or full path.
Return Value: any
This property's value.
Updates the value of a single property.
Parameters:The property's name or full path.
optionValue: any
This property's new value.
Updates the values of several properties.
Parameters:Options with their new values.
Registers a handler to be executed when a user presses a specific key.
Parameters:A key.
A handler. Accepts the keydown event as the argument. It is a EventObject or a jQuery.Event when you use jQuery.
The key argument accepts one of the following values:
A custom handler for a key cancels the default handler for this key.
See AlsoRenders the component again without reloading data. Use the method to update the component's markup and appearance dynamically.
Resets editor values. Every editor attempts to obtain its new value from the argument list. If an editor is not included in the list, that editor resets to its initial value.
This method sets the isDirty flag to false
. You can use this method without arguments to reset the Form component to initial values.
$(() => { const form = $('#form').dxForm({ // ... items: [ // ... { itemType: 'button', buttonOptions: { // ... onClick: () => { form.reset({'name': 'John Smith', 'email': 'johnsmith@example.com'}); }, } } ] }).dxForm('instance'); });Angular
import { Component, ViewChild } from '@angular/core'; import { DxFormComponent } from 'devextreme-angular'; @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) export class AppComponent { @ViewChild('formRef', { static: false }) form: DxFormComponent; resetButtonOptions = { // ... onClick: () => { this.form.instance.reset({'name': 'John Smith', 'email': 'johnsmith@example.com'}); }, }; }
<dx-form ... #formRef > <dxi-item itemType="button" [buttonOptions]="resetButtonOptions" > </dxi-item> </dx-form>Vue
<template> <DxForm ... :ref="formRef" > <DxButtonItem ... :button-options="resetButtonOptions" /> </DxForm> </template> <script> import 'devextreme/dist/css/dx.light.css'; import DxForm, { DxButtonItem }from 'devextreme-vue/form'; export default { components: { DxForm, DxButtonItem }, data() { return { formRef, resetButtonOptions: { // ... onClick: () => { this.form.reset({'name': 'John Smith', 'email': 'johnsmith@example.com'}); }, } } }, computed: { form: function() { return this.$refs[formRef].instance; } } } </script>React
import React, { useRef } from 'react'; import Form, { ButtonItem } from 'devextreme-react/form'; import 'devextreme/dist/css/dx.light.css'; const App = () => { const formRef = useRef(null); const resetButtonOptions = { // ... onClick: () => { this.formRef.current.instance().reset({'name': 'John Smith', 'email': 'johnsmith@example.com'}); }, }; return ( <Form ... ref={formRef} > <ButtonItem ... buttonOptions={resetButtonOptions} /> </Form> ); }; export default App;See Also
Resets a property to its default value.
Use the clear() method instead.
Resets the editor's value to undefined.
Merges the passed data
object with formData. Matching properties in formData are overwritten and new properties added.
Data fields with their new values.
This method does not replace the formData object. To replace it, use the option(optionName, optionValue) method as shown below:
formInstance.option("formData", newFormData);See Also
Updates a formData field and the corresponding editor.
Parameters:A path to the formData field.
The new field value.
Updates the dimensions of the UI component contents.
Use this method to fit the UI component contents to the UI component size after it (size) has been changed.
See AlsoValidates the values of all editors on the form against the list of the validation rules specified for each form item.
Feel free to share topic-related thoughts here.RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4