Class HtmlTable

All Implemented Interfaces:
Serializable, Cloneable, Element, Node

public class HtmlTable extends HtmlElement
Wrapper for the HTML element "table".
See Also:
  • Field Details

  • Method Details

    • getCellAt

      public final HtmlTableCell getCellAt(int rowIndex, int columnIndex)
      Returns the first cell that matches the specified row and column, searching left to right, top to bottom.

      This method returns different values than getRow(rowIndex).getCell(cellIndex) because this takes cellspan and rowspan into account.
      This means, a cell with colspan='2' consumes two columns; a cell with rowspan='3' consumes three rows. The index is based on the 'background' model of the table; if you have a row like
      <td>cell1</td> <td colspan='2'>cell2</td> then this row is treated as a row with three cells.

      getCellAt(rowIndex, 0).asText() returns "cell1";
      getCellAt(rowIndex, 1).asText() returns "cell2";
      getCellAt(rowIndex, 2).asText() returns "cell2"; and
      getCellAt(rowIndex, 3).asText() returns null;

      Parameters:
      rowIndex - the row index
      columnIndex - the column index
      Returns:
      the HtmlTableCell at that location or null if there are no cells at that location
    • getRows

      public List<HtmlTableRow> getRows()
      Returns:
      an immutable list containing all the HtmlTableRow objects
      See Also:
      • getRowIterator()
    • getRow

      public HtmlTableRow getRow(int index) throws IndexOutOfBoundsException
      Parameters:
      index - the 0-based index of the row
      Returns:
      the HtmlTableRow at the given index
      Throws:
      IndexOutOfBoundsException - if there is no row at the given index
      See Also:
      • getRowIterator()
    • getRowCount

      public final int getRowCount()
      Computes the number of rows in this table. Note that the count is computed dynamically by iterating over all rows.
      Returns:
      the number of rows in this table
    • getRowById

      public final HtmlTableRow getRowById(String id) throws ElementNotFoundException
      Finds and return the row with the specified id.
      Parameters:
      id - the id of the row
      Returns:
      the row with the specified id
      Throws:
      ElementNotFoundException - If the row cannot be found.
    • getCaptionText

      public String getCaptionText()
      Returns the table caption text or an empty string if a caption wasn't specified.
      Returns:
      the caption text
    • getHeader

      public HtmlTableHeader getHeader()
      Returns the table header or null if a header wasn't specified.
      Returns:
      the table header
    • getFooter

      public HtmlTableFooter getFooter()
      Returns the table footer or null if a footer wasn't specified.
      Returns:
      the table footer
    • getBodies

      public List<HtmlTableBody> getBodies()
      Returns a list of tables bodies defined in this table. If no bodies were defined then an empty list will be returned.
      Returns:
      a list of HtmlTableBody objects
    • getSummaryAttribute

      public final String getSummaryAttribute()
      Returns the value of the attribute summary. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute summary or an empty string if that attribute isn't defined.
    • getWidthAttribute

      public final String getWidthAttribute()
      Returns the value of the attribute width. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute width or an empty string if that attribute isn't defined.
    • getBorderAttribute

      public final String getBorderAttribute()
      Returns the value of the attribute border. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute border or an empty string if that attribute isn't defined.
    • getFrameAttribute

      public final String getFrameAttribute()
      Returns the value of the attribute frame. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute frame or an empty string if that attribute isn't defined.
    • getRulesAttribute

      public final String getRulesAttribute()
      Returns the value of the attribute rules. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute rules or an empty string if that attribute isn't defined.
    • getCellSpacingAttribute

      public final String getCellSpacingAttribute()
      Returns the value of the attribute cellspacing. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute cellspacing or an empty string if that attribute isn't defined.
    • getCellPaddingAttribute

      public final String getCellPaddingAttribute()
      Returns the value of the attribute cellpadding. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute cellpadding or an empty string if that attribute isn't defined.
    • getAlignAttribute

      public final String getAlignAttribute()
      Returns the value of the attribute align. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute align or an empty string if that attribute isn't defined.
    • getBgcolorAttribute

      public final String getBgcolorAttribute()
      Returns the value of the attribute bgcolor. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute bgcolor or an empty string if that attribute isn't defined.
    • isEmptyXmlTagExpanded

      protected boolean isEmptyXmlTagExpanded()
      Indicates if a node without children should be written in expanded form as XML (i.e. with closing tag rather than with "/>")
      Overrides:
      isEmptyXmlTagExpanded in class DomElement
      Returns:
      true as browsers ignore self closing table tags.
    • getDefaultStyleDisplay

      public HtmlElement.DisplayStyle getDefaultStyleDisplay()
      INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
      Returns the default display style.
      Overrides:
      getDefaultStyleDisplay in class HtmlElement
      Returns:
      the default display style