docs: function(options) {
          var tbody = $('<tbody></tbody>'),
              column = options.column,
              columnCount = column.length,
              data = options.data,
              rowCount = data.length;
  
          for (var i = 0; i < rowCount; i++) {
              var tr = $('<tr></tr>'),
                  item = data[i],
                  index = i + 1;
  
              for (var j = 0; j < columnCount; j++) {
                  var col = column[j];
  
                  if (typeof col.visible !== 'undefined' && !col.visible) {
                      continue;
                  }
  
                  if (!$.isArray(col.content)) {
                      col.content = [col.content];
                  }
  
                  var td = $('<td></td>').attr({
                      align: col.align,
                      width: col.width,
                      class: col.customClass
                  });
                  if (col.editable && col.content.length === 1) {
                      td.attr('editable', '');
                  }
                  if (this.rowSpan > 1 && col.content.length === 1) {
                      td.attr('rowspan', this.rowSpan);
                  }
  
                  var content = col.content[0].apply(this, [item, index, col.field]).toString();
                  td.html((col.escapeContent === false) ? content : escapeHTML(content)).appendTo(tr);
  
                  if (options.flexible) {
                      td.removeAttr('width');
                  }
              }
  
              tbody.append(tr);
  
              if (this.rowSpan > 1) {
                  for (var m = 1; m < this.rowSpan; m++) {
                      var _tr = $('<tr></tr>');
                      for (var n = 0; n < columnCount; n++) {
                          var _col = column[n];
  
                          if (!$.isArray(_col.content)) {
                              _col.content = [_col.content];
                          }
  
                          if ((typeof _col.visible !== 'undefined' && !_col.visible) || _col.content.length === 1) {
                              continue;
                          }
  
                          var _td = $('<td></td>').attr({
                              align: _col.align,
                              class: _col.customClass
                          });
                          var _content = _col.content[m].apply(this, [item, index, _col.field]).toString();
                          _td.html((_col.escapeContent === false) ? _content : escapeHTML(_content)).appendTo(_tr);
  
                          if (options.flexible) {
                              _td.removeAttr('width');
                          }
                      }
                      tbody.append(_tr);
                  }
              }
          }
  
          return tbody.prop('outerHTML');
      }