The component WebElement for oj-data-grid. Do not instantiate this class directly, instead, use ojDataGrid.

Hierarchy

Constructors

  • Constructor. Pass an instance of WebDriver's WebElement that represents the DOM node on which we"ll perform operations.

    Parameters

    • el: WebElement

      The basic WebElement with which this WebElement will work.

    • locators: ElementLocators

    Returns OjDataGrid

Methods

  • Sets the value of currentCell property. Specifies the grid's currently focused cell.

    Parameters

    • currentCell: object

      The value to set for currentCell

    Returns Promise<void>

  • Sets the value of editMode property. Specifies if the grid is read-only or editable.

    Parameters

    • editMode: string

      The value to set for editMode

    Returns Promise<void>

  • Sets the value of frozenColumnCount property. Specifies count of columns to be frozen.

    Parameters

    • frozenColumnCount: number

      The value to set for frozenColumnCount

    Returns Promise<void>

  • Sets the value of frozenRowCount property. Specifies count of rows to be frozen.

    Parameters

    • frozenRowCount: number

      The value to set for frozenRowCount

    Returns Promise<void>

  • Sets the value of hiddenColumns property. Use to hide columns of grid on initial render.

    Parameters

    • hiddenColumns: object

      The value to set for hiddenColumns

    Returns Promise<void>

  • Sets the value of hiddenRows property. Use to hide rows of grid on initial render.

    Parameters

    • hiddenRows: object

      The value to set for hiddenRows

    Returns Promise<void>

  • Sets the value of scrollPosition property. Specifies the current scroll position of the data grid. See the Help documentation for more information.

    Parameters

    Returns Promise<void>

  • Sets the value of selection property. Specifies the grid's current selection.

    Parameters

    • selection: object[]

      The value to set for selection

    Returns Promise<void>

  • Schedules a command to clear the value of this element. This command has no effect if the underlying DOM element is neither a text INPUT element nor a TEXTAREA element.

    Returns Promise<void>

    A promise that will be resolved when the element has been cleared.

  • Schedules a command to click on this element.

    Returns Promise<void>

    A promise that will be resolved when the click command has completed.

  • Forces grid to ender editMode on a particular cell.

    Type Parameters

    • K = any

    Parameters

    • itemLocator: {
          columnIndex?: number;
          columnKey?: K;
          rowIndex?: number;
          rowKey?: K;
      }
      • Optional columnIndex?: number

        The columnIndex within the Collection's dataset associated with the item. (Optional if columnKey is provided)

      • Optional columnKey?: K

        The columnKey within the Collection's dataset associated with the item. (Optional if columnIndex is provided).

      • Optional rowIndex?: number

        The rowIndex within the Collection's dataset associated with the item. (Optional if rowKey is provided)

      • Optional rowKey?: K

        The rowKey within the Collection's dataset associated with the item. (Optional if rowIndex is provided)

    Returns Promise<void>

  • Forces grid to exit editMode.

    Parameters

    • Optional exitParams: {
          cancel: boolean;
      }
      • cancel: boolean

        If set to true datagrid will cancel edit.

    Returns Promise<void>

  • Retrieve a SlotProxy which represents a single datagrid cell.

    Type Parameters

    • K = any

    Parameters

    • itemLocator: {
          columnIndex?: null | number;
          columnKey?: K;
          rowIndex?: null | number;
          rowKey?: K;
      }
      • Optional columnIndex?: null | number

        The columnIndex within the Collection's dataset associated with the item. (Optional if columnKey is provided).

      • Optional columnKey?: K

        The columnKey within the Collection's dataset associated with the item. (Optional if columnIndex is provided).

      • Optional rowIndex?: null | number

        The rowIndex within the Collection's dataset associated with the item. (Optional if rowKey is provided)

      • Optional rowKey?: K

        The rowKey within the Collection's dataset associated with the item. (Optional if rowIndex is provided)

    Returns Promise<SlotProxy>

  • Schedule a command to find a descendant of this element. If the element cannot be found, a bot.ErrorCode.NO_SUCH_ELEMENT result will be returned by the driver. Unlike other commands, this error cannot be suppressed. In other words, scheduling a command to find an element doubles as an assert that the element is present on the page. To test whether an element is present on the page, use #findElements.

    The search criteria for an element may be defined using one of the factories in the By namespace, or as a short-hand By.Hash object. For example, the following two statements are equivalent:

    var e1 = element.findElement(By.id('foo'));
    var e2 = element.findElement({id:'foo'});

    You may also provide a custom locator function, which takes as input this WebDriver instance and returns a WebElement, or a promise that will resolve to a WebElement. For example, to find the first visible link on a page, you could write:

    var link = element.findElement(firstVisibleLink);

    function firstVisibleLink(element) {
    var links = element.findElements(By.tagName('a'));
    return promise.filter(links, function(link) {
    return links.isDisplayed();
    }).then(function(visibleLinks) {
    return visibleLinks[0];
    });
    }

    Parameters

    • locator: Locator

      The locator strategy to use when searching for the element.

    Returns WebElementPromise

    A WebElement that can be used to issue commands against the located element. If the element is not found, the element will be invalidated and all scheduled commands aborted.

  • Schedules a command to find all of the descendants of this element that match the given search criteria.

    Parameters

    • locator: Locator

      The locator strategy to use when searching for the element.

    Returns Promise<WebElement[]>

    A promise that will resolve to an array of WebElements.

  • Retrieve a SlotProxy which represents a single datagrid header.

    Type Parameters

    • K = any

    Parameters

    • itemLocator: {
          axis: "row" | "rowEnd" | "column" | "columnEnd";
          index?: number;
          key?: K;
          level?: number;
      }
      • axis: "row" | "rowEnd" | "column" | "columnEnd"

        The axis where the header is located.

      • Optional index?: number

        The index within the Collection's dataset associated with the header.

      • Optional key?: K

        The key within the Collection's dataset associated with the header.

      • Optional level?: number

        The level of the header requested.

    Returns Promise<SlotProxy>

  • Retrieve a SlotProxy which represents a single datagrid label.

    Parameters

    • itemLocator: {
          axis: "row" | "rowEnd" | "column" | "columnEnd";
          level: number;
      }
      • axis: "row" | "rowEnd" | "column" | "columnEnd"

        The axis where the label is located.

      • level: number

        The level of the label requested.

    Returns Promise<SlotProxy>

  • Schedules a command to query for the value of the given attribute of the element. Will return the current value, even if it has been modified after the page has been loaded. More exactly, this method will return the value of the given attribute, unless that attribute is not present, in which case the value of the property with the same name is returned. If neither value is set, null is returned (for example, the 'value' property of a textarea element). The 'style' attribute is converted as best can be to a text representation with a trailing semi-colon. The following are deemed to be 'boolean' attributes and will return either 'true' or null:

    async, autofocus, autoplay, checked, compact, complete, controls, declare, defaultchecked, defaultselected, defer, disabled, draggable, ended, formnovalidate, hidden, indeterminate, iscontenteditable, ismap, itemscope, loop, multiple, muted, nohref, noresize, noshade, novalidate, nowrap, open, paused, pubdate, readonly, required, reversed, scoped, seamless, seeking, selected, spellcheck, truespeed, willvalidate

    Finally, the following commonly mis-capitalized attribute/property names are evaluated as expected:

    • 'class'
    • 'readonly'

    Parameters

    • attributeName: string

      The name of the attribute to query.

    Returns Promise<string>

    A promise that will be resolved with the attribute's value. The returned value will always be either a string or null.

  • Gets the value of cell property. Specifies attributes on the cells.

    Returns Promise<Cell>

    The value of cell property.

  • This method exists to get content that is intended to interact with. This is not a method to verify data or that template rendering is correct. For those cases unit test the data, template, style function etc.

    Parameters

    • itemLocator: {
          key: {
              columnIndex?: null | number;
              columnKey?: any;
              rowIndex?: null | number;
              rowKey?: any;
          };
      }
      • key: {
            columnIndex?: null | number;
            columnKey?: any;
            rowIndex?: null | number;
            rowKey?: any;
        }
        • Optional columnIndex?: null | number
        • Optional columnKey?: any
        • Optional rowIndex?: null | number
        • Optional rowKey?: any

    Returns Promise<null | WebElement>

    If no cell is found matching the id, returns null. Otherwise: On Zero Match return an empty list. On One Match returns list of one WebElement only. On One+ Match returns list with all matching instance. If cell renderer/template/slot is not specified the promise will be rejected with an error message.

    Deprecated

  • Schedules a command to query for the computed style of the element represented by this instance. If the element inherits the named style from its parent, the parent will be queried for its value. Where possible, color values will be converted to their hex representation (e.g. #00ff00 instead of rgb(0, 255, 0)).

    Warning: the value returned will be as the browser interprets it, so it may be tricky to form a proper assertion.

    Parameters

    • cssStyleProperty: string

      The name of the CSS style property to look up.

    Returns Promise<string>

    A promise that will be resolved with the requested CSS value.

  • Gets the value of currentCell property. Specifies the grid's currently focused cell.

    Returns Promise<object>

    The value of currentCell property.

  • Gets the value of dnd property. Specifies drag and drop features.

    Returns Promise<Dnd>

    The value of dnd property.

  • Gets the value of editMode property. Specifies if the grid is read-only or editable.

    Returns Promise<string>

    The value of editMode property.

  • Gets the value of frozenColumnCount property. Specifies count of columns to be frozen.

    Returns Promise<number>

    The value of frozenColumnCount property.

  • Gets the value of frozenRowCount property. Specifies count of rows to be frozen.

    Returns Promise<number>

    The value of frozenRowCount property.

  • Gets the value of gridlines property. Specifies the visibility of the grid body vertical and horizontal gridlines.

    Returns Promise<Gridlines>

    The value of gridlines property.

  • Gets the value of header property. Specifies attributes on the headers.

    Returns Promise<Header>

    The value of header property.

  • This method exists to get content that is intended to interact with. This is not a method to verify data or that template rendering is correct. For those cases unit test the data, template, style function etc.

    Parameters

    • subId: {
          axis: "row" | "rowEnd" | "column" | "columnEnd";
          index?: number;
          key?: any;
          level?: number;
      }

      information about the header to get contents of, if level not specified will default to 0

      • axis: "row" | "rowEnd" | "column" | "columnEnd"
      • Optional index?: number
      • Optional key?: any
      • Optional level?: number
    • by: By

      The lookup to pass into findElements

    Returns Promise<null | WebElement[]>

    If no header is found matching the id, returns null. Otherwise: On Zero Match return an empty list. On One Match returns list of one WebElement only. On One+ Match returns list with all matching instance. If header renderer/template/slot is not specified the promise will be rejected with an error message.

    Deprecated

  • Gets the value of hiddenColumns property. Use to hide columns of grid on initial render.

    Returns Promise<object>

    The value of hiddenColumns property.

  • Gets the value of hiddenRows property. Use to hide rows of grid on initial render.

    Returns Promise<object>

    The value of hiddenRows property.

  • Returns Promise<string>

    A promise that resolves to the server-assigned opaque ID assigned to this element.

  • This method exists to get content that is intended to interact with. This is not a method to verify data or that template rendering is correct. For those cases unit test the data, template, style function etc.

    Parameters

    • subId: {
          axis: "row" | "rowEnd" | "column" | "columnEnd";
          level: number;
      }

      information about the label to get contents of, if level not specified will default to 0

      • axis: "row" | "rowEnd" | "column" | "columnEnd"
      • level: number
    • by: By

      The lookup to pass into findElements

    Returns Promise<null | WebElement[]>

    If no label is found matching the id, returns null. Otherwise: On Zero Match return an empty list. On One Match returns list of one WebElement only. On One+ Match returns list with all matching instance. If label renderer/template/slot is not specified the promise will be rejected with an error message.

    Deprecated

  • DEPRECATED 3.0 Schedules a command to compute the location of this element in page space.

    Returns Promise<ILocation>

    A promise that will be resolved to the element's location as a {@code {x:number, y:number}} object.

  • Get a named property value from this component. This function will wait for the application's busy context to complete before attempting to get the property value.

    Type Parameters

    • T = string

    Parameters

    • propertyName: string

      The name of the property

    Returns Promise<T>

    A Promise that yields a value for the named property.

  • Returns an object describing an element's location, in pixels relative to the document element, and the element's size in pixels.

    Returns Promise<IRectangle>

  • Gets the value of scrollPolicy property. Specifies how data are fetched as user scrolls through the data grid.

    Returns Promise<null | string>

    The value of scrollPolicy property.

  • Gets the value of scrollPosition property. Specifies the current scroll position of the data grid. See the Help documentation for more information.

    Returns Promise<ScrollPosition>

    The value of scrollPosition property.

  • Gets the value of scrollToKey property. Specifies the behavior when DataGrid needs to scroll to a position based on a row/column key.

    Returns Promise<null | string>

    The value of scrollToKey property.

  • Gets the value of selection property. Specifies the grid's current selection.

    Returns Promise<object[]>

    The value of selection property.

  • Gets the value of selectionMode property. Specifies the row and cell selection modes. See the Help documentation for more information.

    Returns Promise<SelectionMode>

    The value of selectionMode property.

  • DEPRECATED 3.0 Schedules a command to compute the size of this element's bounding box, in pixels.

    Returns Promise<ISize>

    A promise that will be resolved with the element's size as a {@code {width:number, height:number}} object.

  • Schedules a command to query for the tag/node name of this element.

    Returns Promise<string>

    A promise that will be resolved with the element's tag name.

  • Get the visible (i.e. not hidden by CSS) innerText of this element, including sub-elements, without any leading or trailing whitespace.

    Returns Promise<string>

    A promise that will be resolved with the element's visible text.

  • Gets the value of translations property. A collection of translated resources from the translation bundle, or null if this component has no resources.

    Returns Promise<null | Translations>

    The value of translations property.

  • Create a wait condition that is satisfied when the element's DOM has a non-zero size.

    Returns Condition<Promise<boolean>>

    The Condition to be used with driver.wait() that's satisfied when the element's DOM has a non-zero size.

    Deprecated

    Since 11.0.0. Call the appropriate WebElement method to test the size of the element.

  • Create a wait condition that is satisfid when the element is visible. The condition is satisfied when the element is displayed, as reported by #isDisplayed, and is scrolled into view. This is method is deprecated. Use WebElement.isDisplayed instead to test the display of the element, and scroll it into view if necessary.

    Returns Condition<Promise<boolean>>

    Deprecated

  • Schedules a command to test whether this element is currently displayed.

    Returns Promise<boolean>

    A promise that will be resolved with whether this element is currently visible on the page.

  • Schedules a command to query whether the DOM element represented by this instance is enabled, as dicted by the {@code disabled} attribute.

    Returns Promise<boolean>

    A promise that will be resolved with whether this element is currently enabled.

  • Schedules a command to query whether this element is selected.

    Returns Promise<boolean>

    A promise that will be resolved with whether this element is currently selected.

  • Schedules a command to type a sequence on the DOM element represented by this promsieinstance.

    Modifier keys (SHIFT, CONTROL, ALT, META) are stateful; once a modifier is processed in the keysequence, that key state is toggled until one of the following occurs:

    • The modifier key is encountered again in the sequence. At this point the state of the key is toggled (along with the appropriate keyup/down events).

    • The Key.NULL key is encountered in the sequence. When this key is encountered, all modifier keys current in the down state are released (with accompanying keyup events). The NULL key can be used to simulate common keyboard shortcuts:

        element.sendKeys('text was',
      Key.CONTROL, 'a', Key.NULL,
      'now text is');
      // Alternatively:
      element.sendKeys('text was',
      Key.chord(Key.CONTROL, 'a'),
      'now text is');
    • The end of the keysequence is encountered. When there are no more keys to type, all depressed modifier keys are released (with accompanying keyup events).

    If this element is a file input ({@code }), the specified key sequence should specify the path to the file to attach to the element. This is analgous to the user clicking 'Browse...' and entering the path into the file select dialog.

    var form = driver.findElement(By.css('form'));
    var element = form.findElement(By.css('input[type=file]'));
    element.sendKeys('/path/to/file.txt');
    form.submit();

    For uploads to function correctly, the entered path must reference a file on the browser's machine, not the local machine running this script. When running against a remote Selenium server, a FileDetector may be used to transparently copy files to the remote machine before attempting to upload them in the browser.

    Note: On browsers where native keyboard events are not supported (e.g. Firefox on OS X), key events will be synthesized. Special punctionation keys will be synthesized according to a standard QWERTY en-us keyboard layout.

    Parameters

    • Rest ...varArgs: (string | number | Promise<string | number>)[]

      The sequence of keys to type. All arguments will be joined into a single sequence.

    Returns Promise<void>

    A promise that will be resolved when all keys have been typed.

  • Set a property value on the remote element. This function first waits for the BusyContext to clear before setting the property, then after setting, waits again to ensure that no additional busy states were created due to the property setting.

    Type Parameters

    • T = string

    Parameters

    • propertyName: string

      The property name to set

    • value: T

      The value to set for the property

    Returns Promise<void>

    A Promise which resolves when the remote property has been set to the value. Any value returned from the call to set the remote property is returned in the Promise.

  • Schedules a command to submit the form containing this element (or this element if it is a FORM element). This command is a no-op if the element is not contained in a form.

    Returns Promise<void>

    A promise that will be resolved when the form has been submitted.

  • Take a screenshot of the visible region encompassed by this element's bounding rectangle.

    Parameters

    • Optional optScroll: boolean

      Optional argument that indicates whether the element should be scrolled into view before taking a screenshot. Defaults to false.

    Returns Promise<string>

    A promise that will be resolved to the screenshot as a base-64 encoded PNG.

  • Returns a Promise that is resolved when the application's busy state reports ready. This method checks only that the application's busy context is ready, and not that the DOM element is actually displayed or has a physical size, such as is the case with #whenReady. Operations which are read-only in nature should call this method prior to execution.

    Returns Promise<void>

    A Promise which is resolved when the page's busy state is ready.

  • Returns a Promise that is resolved when the element is ready for interaction--it is visible, has a size, and the app's busy context is ready. Operations on the DOM which rely on its physical location and size to be in a "ready" state should use this command, such as clicking, sending keys, locating child elements, and so on.

    Returns Promise<void>

    A Promise that's resolved when all conditions are met.

  • Parameters

    • id: string

      The raw ID.

    • Optional opt_noLegacy: boolean

      Whether to exclude the legacy element key.

    Returns IWebElementId

    The element ID for use with WebDriver's wire protocol.

  • Compares two WebElements for equality.

    Parameters

    Returns Promise<boolean>

    A promise that will be resolved to whether the two WebElements are equal.

  • Extracts the encoded WebElement ID from the object.

    Parameters

    Returns string

    the extracted ID.

    Throws

    if the object is not a valid encoded ID.

  • Parameters

    Returns boolean

    whether the object is a valid encoded WebElement ID.

Generated using TypeDoc