Form script allows you to perform operations before the form is rendered, or to attach data model elements to get notifications. Form script also has some library functions like $Xml depending on the context. Please refer to the side bar for available library functions and scripting reference.
Form script also has a following $Form variable with following properties:
$Form = { element : $('form'), // jQuery form element refresh : function() {} // method to re-build and render form from the scratch readonly : boolean, // Specifies whether the form is in readonly or in edit mode }
Common Usage Scenarios
Attach Event Handlers.
Attach a model element to an existing data .
$Xml.Bind('Person/Name', function() { // executed when Person/Name is changed });
Above example normally works if the Name element exists in the Person element. But some elements may not exist yet when the form is rendered. For example, Bind method does not work for list items that are not yet created. If you want to attach nodes for the future elements you can use $Xml.Live method.
$Xml.Live('List/Item/Amount', function() { // executed when List/Item/Amount is changed });
Use Custom jQuery Plugins
// attach jquery event to form ready event $Form.element.on('ready', function() { // find custom added panel and initialize plugin $Form.element.find('.myCustomPanel').myCustomPlugin(); });