CustomXmlPart.addHandlerAsync method (JavaScript API for Office v1.1)

JavaScript API for Office v1.1

Adds an event handler for a CustomXmlPart object event.

Last modified: June 12, 2014

customXmlPart.addHandlerAsync(eventType, handler [, options], callback);

eventType

Type: EventType

Specifies the type of event to add. Required.

For a CustomXmlPart object event, the eventType parameter can be specified as Office.EventType.NodeDeleted, Office.EventType.NodeInserted, Office.EventType.NodeReplaced, or the corresponding text values of these enumerations.

handler

Type: object

The event handler function to add, whose only parameter is of type NodeDeletedEventArgs, NodeInsertedEventArgs, or NodeReplaceEventArgs. Required.

options

Type:object

Specifies the following optional parameters.

asyncContext

Type: array, Boolean, null, number, object, string, or undefined

A user-defined item of any type that is returned in the AsyncResult object without being altered. Optional.

callback

Type: object

A function that is invoked when the callback returns, whose only parameter is of type AsyncResult.

When the function you passed to the callback parameter executes, it receives an AsyncResult object that you can access from the callback function's only parameter.

In the callback function passed to the addHandlerAsync method, you can use the properties of the AsyncResult object to return the following information.

Property

Use to...

AsyncResult.value

Always returns undefined because there is no data or object to retrieve when adding an event handler.

AsyncResult.status

Determine the success or failure of the operation.

AsyncResult.error

Access an Error object that provides error information if the operation failed.

AsyncResult.asyncContext

Access your user-defined object or value, if you passed one as the asyncContext parameter.

You can add multiple event handlers for the specified eventType as long as the name of each event handler function is unique.

function addNodeInsertedEvent() {
    Office.context.document.customXmlParts.getByIdAsync("{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        var xmlPart = result.value;
        xmlPart.addHandlerAsync(Office.EventType.NodeInserted, myHandler);
    });
}
function myHandler(eventArgs) {
            write("A node has been inserted.");
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

App types

Task pane apps

Supported clients

Word 2013, Word 2013 SP1, Word 2013 RT

Library

Office.js

Namespace

Office

Show:
© 2014 Microsoft