Print Friendly

# Class YAHOO.ext.grid.Grid

Package: | YAHOO.ext.grid
Class: | Grid
Extends: | Observable
Subclasses: | EditorGrid
Defined In: | Grid.js

This class represents the primary interface of a component based grid control.
Usage:

    var grid = new YAHOO.ext.grid.Grid('my-container-id', dataModel, columnModel);
    // set any options
    grid.render();

Common Problems: - Grid does not resize properly when going smaller: Setting overflow hidden on the container element will correct this - If you get el.style[camel]= NaNpx or -2px or something related, be certain you have given your container element dimensions. The grid adapts to your container's size, if your container has no size defined then the results are unpredictable. - Do not put render the grid into an element with display:none. Use visibility:hidden and position:absolute - at least until the grid is rendered. Otherwise there is no way for the grid to calculate dimension/offsets.

## Public Properties

Property | Defined By
--- | ---
| allowTextSelectionPattern : Object | Grid
A regular expression defining tagNames allowed to have text selection (Defaults to `/INPUT|TEXTAREA|SELECT/i`)
| autoHeight : Boolean | Grid
True to fit the height of the grid container to the height of the data (defaults to false)
| autoSizeColumns : Boolean | Grid
True to automatically resize the columns to fit their content on initial render
| autoSizeHeaders : Boolean | Grid
True to measure headers with column data when auto sizing columns
| autoWidth : Boolean | Grid
True to fit the width of the grid container to the width of the columns (defaults to false)
| ddText : String | Grid
Configures the text is the drag proxy (defaults to "%0 selected row(s)"). %0 is replaced with the number of selected...
| enableDragDrop : Boolean | Grid
True to enable drag and drop of rows
| maxRowsToMeasure : Number | Grid
If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of rows measured to get a columns size - d...
| minColumnWidth : Number | Grid
The minimum width a column can be resized to. (Defaults to 25)
| monitorWindowResize : Object | Grid
True to autoSize the grid when the window resizes - defaults to true
| stripeRows : Boolean | Grid
True to stripe the rows (default is true)
| trackMouseOver : Boolean | Grid
True to highlight rows when the mouse is over (default is false)

## Public Methods

Method | Defined By
--- | ---
| Grid(`String/HTMLElement/YAHOO.ext.Element container`, `Object dataModel`, `Object colModel`, [`Object selectionModel`]) | Grid
| addListener(`String eventName`, `Function handler`, [`Object scope`], [`boolean override`]) : void | Observable
Appends an event handler to this element
| autoSize() : void | Grid
Causes the grid to manually recalculate it's dimensions. Generally this is done automatically, but if manual update ...
| bindToField(`String The`) : void | Grid
Binds this grid to the field with the specified id. Initially reads and parses the comma delimited ids in the field ...
| clearSelections() : void | Grid
Convenience method for getSelectionModel().clearSelections() - See YAHOO.ext.grid.DefaultSelectionModel.clearSelecti...
| delayedListener(`String eventName`, `Function handler`, [`Object scope`], [`Number delay`]) : Function | Observable
Appends an event handler to this element that is delayed the specified number of milliseconds.
| fireEvent(`String eventName`, `Object... args`) : Boolean | Observable
Fires the specified event with the passed parameters (minus the event name).
| getCellAfter(`HTMLElement cell`, `Boolean includeHidden`) : HTMLElement | Grid
Returns the cell that comes after the specified cell - text nodes are skipped.
| getCellBefore(`HTMLElement cell`, `Boolean includeHidden`) : HTMLElement | Grid
Returns the cell that comes before the specified cell - text nodes are skipped.
| getCellFromChild(`HTMLElement childEl`) : HTMLElement | Grid
Returns the cell that contains the specified child element.
| getColumnModel() : ColumnModel | Grid
Returns the grid's ColumnModel.
| getDataModel() : DataModel | Grid
Returns the grid's DataModel.
| getDragDropText() : String | Grid
Called to get grid's drag proxy text, by default returns this.ddText.
| getFirstCell(`HTMLElement row`, `Boolean includeHidden`) : HTMLElement | Grid
Returns the first cell for the row - text nodes and hidden columns are skipped.
| getHeaderFromChild(`HTMLElement childEl`) : HTMLElement | Grid
Returns the header element that contains the specified child element.
| getLastCell(`HTMLElement row`, `Boolean includeHidden`) : HTMLElement | Grid
Returns the last cell for the row - text nodes and hidden columns are skipped.
| getRow(`Number index`) : HTMLElement | Grid
Returns the table row at the specified index
| getRowAfter(`HTMLElement row`) : HTMLElement | Grid
Returns the row that comes after the specified row - text nodes are skipped.
| getRowBefore(`HTMLElement row`) : HTMLElement | Grid
Returns the row that comes before the specified row - text nodes are skipped.
| getRowFromChild(`HTMLElement childEl`) : HTMLElement | Grid
Returns the row that contains the specified child element.
| getRowsById(`String/Array An`) : HtmlElement/Array | Grid
Returns the rows that have the specified id(s). The id value for a row is provided by the DataModel. See YAHOO.ext.g...
| getSelectedRow() : HTMLElement | Grid
Convenience method for getSelectionModel().getSelectedRows()[0] - See YAHOO.ext.grid.DefaultSelectionModel.getSelect...
| getSelectedRowId() : String | Grid
Convenience method for getSelectionModel().getSelectedRowIds()[0] - See YAHOO.ext.grid.DefaultSelectionModel.getSele...
| getSelectedRowIds() : Array | Grid
Convenience method for getSelectionModel().getSelectedRowIds() - See YAHOO.ext.grid.DefaultSelectionModel.getSelecte...
| getSelectedRowIndex() : Number | Grid
Gets the first selected row or -1 if none are selected
| getSelectedRowIndexes() : Array | Grid
Get the selected row indexes
| getSelectedRows() : Array | Grid
Convenience method for getSelectionModel().getSelectedRows() - See YAHOO.ext.grid.DefaultSelectionModel.getSelectedR...
| getSelectionCount() : Number | Grid
Convenience method for getSelectionModel().getCount() - See YAHOO.ext.grid.DefaultSelectionModel.getCount for more d...
| getSelectionModel() : SelectionModel | Grid
Returns the grid's SelectionModel.
| getView() : GridView | Grid
Returns the grid's GridView object.
| hasSelection() : Boolean | Grid
Convenience method for getSelectionModel().hasSelection() - See YAHOO.ext.grid.DefaultSelectionModel.hasSelection fo...
| purgeListeners() : void | Observable
Removes all listeners for this object
| readField() : void | Grid
Causes the grid to read and select the ids from the bound field - See bindToField.
| removeListener(`String eventName`, `Function handler`, [`Object scope`]) : void | Observable
Removes a listener
| render() : void | Grid
Called once after all setup has been completed and the grid is ready to be rendered.
| scrollTo(`Number/HTMLElement row`) : void | Grid
Scrolls the grid to the specified row
| selectAll() : void | Grid
Convenience method for getSelectionModel().selectAll() - See YAHOO.ext.grid.DefaultSelectionModel.selectAll for more...
| setDataModel(`DataModel dm`) : void | Grid
Replace the current data model with a new one (experimental)
| startEditing(`Number rowIndex`, `Number colIndex`) : void | Grid
Starts editing the specified for the specified row/column
| stopEditing() : void | Grid
Stops any active editing

## Public Events

Event | Defined By
--- | ---
| afteredit : (`Grid this`, `Number rowIndex`, `Number columnIndex`) | Grid
Fires after a cell is edited
| beforeedit : (`Grid this`, `Number rowIndex`, `Number columnIndex`) | Grid
Fires before a cell is edited
| bodyscroll : (`Number scrollLeft`, `Number scrollTop`) | Grid
Fires when the body element is scrolled
| cellclick : (`Grid this`, `Number rowIndex`, `Number columnIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a cell is clicked
| celldblclick : (`Grid this`, `Number rowIndex`, `Number columnIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a cell is double clicked
| click : (`YAHOO.ext.EventObject e`) | Grid
The raw click event for the entire grid.
| columnresize : (`Number columnIndex`, `Number newSize`) | Grid
Fires when the user resizes a column
| dblclick : (`YAHOO.ext.EventObject e`) | Grid
The raw dblclick event for the entire grid.
| dragdrop : (`Grid this`, `YAHOO.ext.GridDD dd`, `String targetId`, `event e`) | Grid
Fires when dragged row(s) are dropped on a valid DD target
| dragenter : (`Grid this`, `YAHOO.ext.GridDD dd`, `String targetId`, `event e`) | Grid
Fires when the dragged row(s) first cross another DD target while being dragged
| dragout : (`Grid this`, `YAHOO.ext.GridDD dd`, `String targetId`, `event e`) | Grid
Fires when the dragged row(s) leave another DD target while being dragged
| dragover : (`Grid this`, `YAHOO.ext.GridDD dd`, `String targetId`, `event e`) | Grid
Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dr...
| enddrag : (`Grid this`, `YAHOO.ext.GridDD dd`, `event e`) | Grid
Fires when a drag operation is complete
| headerclick : (`Grid this`, `Number columnIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a header is clicked
| headercontextmenu : (`Grid this`, `Number columnIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a header is right clicked
| keydown : (`YAHOO.ext.EventObject e`) | Grid
The raw keydown event for the entire grid.
| keypress : (`YAHOO.ext.EventObject e`) | Grid
The raw keypress event for the entire grid.
| mousedown : (`YAHOO.ext.EventObject e`) | Grid
The raw mousedown event for the entire grid.
| mouseout : (`YAHOO.ext.EventObject e`) | Grid
The raw mouseout event for the entire grid.
| mouseover : (`YAHOO.ext.EventObject e`) | Grid
The raw mouseover event for the entire grid.
| mouseup : (`YAHOO.ext.EventObject e`) | Grid
The raw mouseup event for the entire grid.
| rowclick : (`Grid this`, `Number rowIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a row is clicked
| rowcontextmenu : (`Grid this`, `Number rowIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a row is right clicked
| rowdblclick : (`Grid this`, `Number rowIndex`, `YAHOO.ext.EventObject e`) | Grid
Fires when a cell is double clicked
| startdrag : (`Grid this`, `YAHOO.ext.GridDD dd`, `event e`) | Grid
Fires when row(s) start being dragged

## Property Details

### allowTextSelectionPattern

`public Object allowTextSelectionPattern`
A regular expression defining tagNames allowed to have text selection (Defaults to `/INPUT|TEXTAREA|SELECT/i`)
This property is defined by Grid.

### autoHeight

`public Boolean autoHeight`
True to fit the height of the grid container to the height of the data (defaults to false)
This property is defined by Grid.

### autoSizeColumns

`public Boolean autoSizeColumns`
True to automatically resize the columns to fit their content on initial render
This property is defined by Grid.

### autoSizeHeaders

`public Boolean autoSizeHeaders`
True to measure headers with column data when auto sizing columns
This property is defined by Grid.

### autoWidth

`public Boolean autoWidth`
True to fit the width of the grid container to the width of the columns (defaults to false)
This property is defined by Grid.

### ddText

`public String ddText`
Configures the text is the drag proxy (defaults to "%0 selected row(s)"). %0 is replaced with the number of selected rows.
This property is defined by Grid.

### enableDragDrop

`public Boolean enableDragDrop`
True to enable drag and drop of rows
This property is defined by Grid.

### maxRowsToMeasure

`public Number maxRowsToMeasure`
If autoSizeColumns is on, maxRowsToMeasure can be used to limit the number of rows measured to get a columns size - defaults to 0 (all rows).
This property is defined by Grid.

### minColumnWidth

`public Number minColumnWidth`
The minimum width a column can be resized to. (Defaults to 25)
This property is defined by Grid.

### monitorWindowResize

`public Object monitorWindowResize`
True to autoSize the grid when the window resizes - defaults to true
This property is defined by Grid.

### stripeRows

`public Boolean stripeRows`
True to stripe the rows (default is true)
This property is defined by Grid.

### trackMouseOver

`public Boolean trackMouseOver`
True to highlight rows when the mouse is over (default is false)
This property is defined by Grid.

## Constructor Details

### Grid

`public function Grid(`String/HTMLElement/YAHOO.ext.Element container`, `Object dataModel`, `Object colModel`, [`Object selectionModel`])`
Parameters:

- `container` : String/HTMLElement/YAHOO.ext.Element
  The element into which this grid will be rendered - The container MUST have some type of size defined for the grid to fill. The container will be automatically set to position relative if it isn't already.
- `dataModel` : Object
  The data model to bind to
- `colModel` : Object
  The column model with info about this grid's columns
- `selectionModel` : Object
  (optional) The selection model for this grid (defaults to DefaultSelectionModel)

## Method Details

### addListener

`public function addListener(`String eventName`, `Function handler`, [`Object scope`], [`boolean override`])`
Appends an event handler to this element
Parameters:

- `eventName` : String
  The type of event to listen for
- `handler` : Function
  The method the event invokes
- `scope` : Object
  (optional) The scope (this object) for the handler
- `override` : boolean
  (optional) If true, scope becomes the scope

Returns:

- `void`

This method is defined by Observable.

### autoSize

`public function autoSize()`
Causes the grid to manually recalculate it's dimensions. Generally this is done automatically, but if manual update is required this method will initiate it.
Parameters:

- None.

Returns:

- `void`

This method is defined by Grid.

### bindToField

`public function bindToField(`String The`)`
Binds this grid to the field with the specified id. Initially reads and parses the comma delimited ids in the field and selects those items. All selections made in the grid will be persisted to the field by their ids comma delimited.
Parameters:

- `The` : String
  id of the field to bind to

Returns:

- `void`

This method is defined by Grid.

### clearSelections

`public function clearSelections()`
Convenience method for getSelectionModel().clearSelections() - See YAHOO.ext.grid.DefaultSelectionModel.clearSelections for more details.
Parameters:

- None.

Returns:

- `void`

This method is defined by Grid.

### delayedListener

`public function delayedListener(`String eventName`, `Function handler`, [`Object scope`], [`Number delay`])`
Appends an event handler to this element that is delayed the specified number of milliseconds.
Parameters:

- `eventName` : String
  The type of event to listen for
- `handler` : Function
  The method the event invokes
- `scope` : Object
  (optional) The scope (this object) for the handler
- `delay` : Number
  (optional) The number of milliseconds to delay

Returns:

- `Function`
  The wrapped function that was created (can be used to remove the listener)

This method is defined by Observable.

### fireEvent

`public function fireEvent(`String eventName`, `Object... args`)`
Fires the specified event with the passed parameters (minus the event name).
Parameters:

- `eventName` : String
- `args` : Object...
  Variable number of parameters are passed to handlers

Returns:

- `Boolean`
  returns false if any of the handlers return false otherwise it returns true

This method is defined by Observable.

### getCellAfter

`public function getCellAfter(`HTMLElement cell`, `Boolean includeHidden`)`
Returns the cell that comes after the specified cell - text nodes are skipped.
Parameters:

- `cell` : HTMLElement
- `includeHidden` : Boolean

Returns:

- `HTMLElement`

This method is defined by Grid.

### getCellBefore

`public function getCellBefore(`HTMLElement cell`, `Boolean includeHidden`)`
Returns the cell that comes before the specified cell - text nodes are skipped.
Parameters:

- `cell` : HTMLElement
- `includeHidden` : Boolean

Returns:

- `HTMLElement`

This method is defined by Grid.

### getCellFromChild

`public function getCellFromChild(`HTMLElement childEl`)`
Returns the cell that contains the specified child element.
Parameters:

- `childEl` : HTMLElement

Returns:

- `HTMLElement`

This method is defined by Grid.

### getColumnModel

`public function getColumnModel()`
Returns the grid's ColumnModel.
Parameters:

- None.

Returns:

- `ColumnModel`

This method is defined by Grid.

### getDataModel

`public function getDataModel()`
Returns the grid's DataModel.
Parameters:

- None.

Returns:

- `DataModel`

This method is defined by Grid.

### getDragDropText

`public function getDragDropText()`
Called to get grid's drag proxy text, by default returns this.ddText.
Parameters:

- None.

Returns:

- `String`

This method is defined by Grid.

### getFirstCell

`public function getFirstCell(`HTMLElement row`, `Boolean includeHidden`)`
Returns the first cell for the row - text nodes and hidden columns are skipped.
Parameters:

- `row` : HTMLElement
- `includeHidden` : Boolean

Returns:

- `HTMLElement`

This method is defined by Grid.

### getHeaderFromChild

`public function getHeaderFromChild(`HTMLElement childEl`)`
Returns the header element that contains the specified child element.
Parameters:

- `childEl` : HTMLElement

Returns:

- `HTMLElement`

This method is defined by Grid.

### getLastCell

`public function getLastCell(`HTMLElement row`, `Boolean includeHidden`)`
Returns the last cell for the row - text nodes and hidden columns are skipped.
Parameters:

- `row` : HTMLElement
- `includeHidden` : Boolean

Returns:

- `HTMLElement`

This method is defined by Grid.

### getRow

`public function getRow(`Number index`)`
Returns the table row at the specified index
Parameters:

- `index` : Number

Returns:

- `HTMLElement`

This method is defined by Grid.

### getRowAfter

`public function getRowAfter(`HTMLElement row`)`
Returns the row that comes after the specified row - text nodes are skipped.
Parameters:

- `row` : HTMLElement

Returns:

- `HTMLElement`

This method is defined by Grid.

### getRowBefore

`public function getRowBefore(`HTMLElement row`)`
Returns the row that comes before the specified row - text nodes are skipped.
Parameters:

- `row` : HTMLElement

Returns:

- `HTMLElement`

This method is defined by Grid.

### getRowFromChild

`public function getRowFromChild(`HTMLElement childEl`)`
Returns the row that contains the specified child element.
Parameters:

- `childEl` : HTMLElement

Returns:

- `HTMLElement`

This method is defined by Grid.

### getRowsById

`public function getRowsById(`String/Array An`)`
Returns the rows that have the specified id(s). The id value for a row is provided by the DataModel. See YAHOO.ext.grid.DefaultDataModel.getRowId.
Parameters:

- `An` : String/Array
  id to find or an array of ids

Returns:

- `HtmlElement/Array`
  If one id was passed in, it returns one result. If an array of ids was specified, it returns an Array of HTMLElements

This method is defined by Grid.

### getSelectedRow

`public function getSelectedRow()`
Convenience method for getSelectionModel().getSelectedRows()[0] - See YAHOO.ext.grid.DefaultSelectionModel.getSelectedRows for more details.
Parameters:

- None.

Returns:

- `HTMLElement`

This method is defined by Grid.

### getSelectedRowId

`public function getSelectedRowId()`
Convenience method for getSelectionModel().getSelectedRowIds()[0] - See YAHOO.ext.grid.DefaultSelectionModel.getSelectedRowIds for more details.
Parameters:

- None.

Returns:

- `String`

This method is defined by Grid.

### getSelectedRowIds

`public function getSelectedRowIds()`
Convenience method for getSelectionModel().getSelectedRowIds() - See YAHOO.ext.grid.DefaultSelectionModel.getSelectedRowIds for more details.
Parameters:

- None.

Returns:

- `Array`

This method is defined by Grid.

### getSelectedRowIndex

`public function getSelectedRowIndex()`
Gets the first selected row or -1 if none are selected
Parameters:

- None.

Returns:

- `Number`

This method is defined by Grid.

### getSelectedRowIndexes

`public function getSelectedRowIndexes()`
Get the selected row indexes
Parameters:

- None.

Returns:

- `Array`
  Array of indexes

This method is defined by Grid.

### getSelectedRows

`public function getSelectedRows()`
Convenience method for getSelectionModel().getSelectedRows() - See YAHOO.ext.grid.DefaultSelectionModel.getSelectedRows for more details.
Parameters:

- None.

Returns:

- `Array`

This method is defined by Grid.

### getSelectionCount

`public function getSelectionCount()`
Convenience method for getSelectionModel().getCount() - See YAHOO.ext.grid.DefaultSelectionModel.getCount for more details.
Parameters:

- None.

Returns:

- `Number`

This method is defined by Grid.

### getSelectionModel

`public function getSelectionModel()`
Returns the grid's SelectionModel.
Parameters:

- None.

Returns:

- `SelectionModel`

This method is defined by Grid.

### getView

`public function getView()`
Returns the grid's GridView object.
Parameters:

- None.

Returns:

- `GridView`

This method is defined by Grid.

### hasSelection

`public function hasSelection()`
Convenience method for getSelectionModel().hasSelection() - See YAHOO.ext.grid.DefaultSelectionModel.hasSelection for more details.
Parameters:

- None.

Returns:

- `Boolean`

This method is defined by Grid.

### purgeListeners

`public function purgeListeners()`
Removes all listeners for this object
Parameters:

- None.

Returns:

- `void`

This method is defined by Observable.

### readField

`public function readField()`
Causes the grid to read and select the ids from the bound field - See bindToField.
Parameters:

- None.

Returns:

- `void`

This method is defined by Grid.

### removeListener

`public function removeListener(`String eventName`, `Function handler`, [`Object scope`])`
Removes a listener
Parameters:

- `eventName` : String
  The type of event to listen for
- `handler` : Function
  The handler to remove
- `scope` : Object
  (optional) The scope (this object) for the handler

Returns:

- `void`

This method is defined by Observable.

### render

`public function render()`
Called once after all setup has been completed and the grid is ready to be rendered.
Parameters:

- None.

Returns:

- `void`

This method is defined by Grid.

### scrollTo

`public function scrollTo(`Number/HTMLElement row`)`
Scrolls the grid to the specified row
Parameters:

- `row` : Number/HTMLElement
  The row object or index of the row

Returns:

- `void`

This method is defined by Grid.

### selectAll

`public function selectAll()`
Convenience method for getSelectionModel().selectAll() - See YAHOO.ext.grid.DefaultSelectionModel.selectAll for more details.
Parameters:

- None.

Returns:

- `void`

This method is defined by Grid.

### setDataModel

`public function setDataModel(`DataModel dm`)`
Replace the current data model with a new one (experimental)
Parameters:

- `dm` : DataModel
  The new data model @pram {Boolean} rerender true to render the grid rows from scratch

Returns:

- `void`

This method is defined by Grid.

### startEditing

`public function startEditing(`Number rowIndex`, `Number colIndex`)`
Starts editing the specified for the specified row/column
Parameters:

- `rowIndex` : Number
- `colIndex` : Number

Returns:

- `void`

This method is defined by Grid.

### stopEditing

`public function stopEditing()`
Stops any active editing
Parameters:

- None.

Returns:

- `void`

This method is defined by Grid.

## Event Details

### afteredit

`public event afteredit`
Fires after a cell is edited
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `columnIndex` : Number

This event is defined by Grid.

### beforeedit

`public event beforeedit`
Fires before a cell is edited
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `columnIndex` : Number

This event is defined by Grid.

### bodyscroll

`public event bodyscroll`
Fires when the body element is scrolled
Subscribers will be called with the following parameters:

- `scrollLeft` : Number
- `scrollTop` : Number

This event is defined by Grid.

### cellclick

`public event cellclick`
Fires when a cell is clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `columnIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### celldblclick

`public event celldblclick`
Fires when a cell is double clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `columnIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### click

`public event click`
The raw click event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### columnresize

`public event columnresize`
Fires when the user resizes a column
Subscribers will be called with the following parameters:

- `columnIndex` : Number
- `newSize` : Number

This event is defined by Grid.

### dblclick

`public event dblclick`
The raw dblclick event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### dragdrop

`public event dragdrop`
Fires when dragged row(s) are dropped on a valid DD target
Subscribers will be called with the following parameters:

- `this` : Grid
- `dd` : YAHOO.ext.GridDD
  The drag drop object
- `targetId` : String
  The target drag drop object
- `e` : event
  The raw browser event

This event is defined by Grid.

### dragenter

`public event dragenter`
Fires when the dragged row(s) first cross another DD target while being dragged
Subscribers will be called with the following parameters:

- `this` : Grid
- `dd` : YAHOO.ext.GridDD
  The drag drop object
- `targetId` : String
  The target drag drop object
- `e` : event
  The raw browser event

This event is defined by Grid.

### dragout

`public event dragout`
Fires when the dragged row(s) leave another DD target while being dragged
Subscribers will be called with the following parameters:

- `this` : Grid
- `dd` : YAHOO.ext.GridDD
  The drag drop object
- `targetId` : String
  The target drag drop object
- `e` : event
  The raw browser event

This event is defined by Grid.

### dragover

`public event dragover`
Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
Subscribers will be called with the following parameters:

- `this` : Grid
- `dd` : YAHOO.ext.GridDD
  The drag drop object
- `targetId` : String
  The target drag drop object
- `e` : event
  The raw browser event

This event is defined by Grid.

### enddrag

`public event enddrag`
Fires when a drag operation is complete
Subscribers will be called with the following parameters:

- `this` : Grid
- `dd` : YAHOO.ext.GridDD
  The drag drop object
- `e` : event
  The raw browser event

This event is defined by Grid.

### headerclick

`public event headerclick`
Fires when a header is clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `columnIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### headercontextmenu

`public event headercontextmenu`
Fires when a header is right clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `columnIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### keydown

`public event keydown`
The raw keydown event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### keypress

`public event keypress`
The raw keypress event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### mousedown

`public event mousedown`
The raw mousedown event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### mouseout

`public event mouseout`
The raw mouseout event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### mouseover

`public event mouseover`
The raw mouseover event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### mouseup

`public event mouseup`
The raw mouseup event for the entire grid.
Subscribers will be called with the following parameters:

- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### rowclick

`public event rowclick`
Fires when a row is clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### rowcontextmenu

`public event rowcontextmenu`
Fires when a row is right clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### rowdblclick

`public event rowdblclick`
Fires when a cell is double clicked
Subscribers will be called with the following parameters:

- `this` : Grid
- `rowIndex` : Number
- `e` : YAHOO.ext.EventObject

This event is defined by Grid.

### startdrag

`public event startdrag`
Fires when row(s) start being dragged
Subscribers will be called with the following parameters:

- `this` : Grid
- `dd` : YAHOO.ext.GridDD
  The drag drop object
- `e` : event
  The raw browser event

This event is defined by Grid.

Copyright © 2006 Jack Slocum. All rights reserved.