* Add the options to the page HTML for the table * @param {object} settings DataTables settings object * @memberof DataTable#oApi
(settings)
| 3492 | * @memberof DataTable#oApi |
| 3493 | */ |
| 3494 | function _fnAddOptionsHtml(settings) { |
| 3495 | var classes = settings.oClasses |
| 3496 | var table = $(settings.nTable) |
| 3497 | |
| 3498 | // Wrapper div around everything DataTables controls |
| 3499 | var insert = $("<div/>") |
| 3500 | .attr({ |
| 3501 | id: settings.sTableId + "_wrapper", |
| 3502 | class: classes.container |
| 3503 | }) |
| 3504 | .insertBefore(table) |
| 3505 | |
| 3506 | settings.nTableWrapper = insert[0] |
| 3507 | |
| 3508 | if (settings.sDom) { |
| 3509 | // Legacy |
| 3510 | _fnLayoutDom(settings, settings.sDom, insert) |
| 3511 | } else { |
| 3512 | var top = _layoutArray(settings, settings.layout, "top") |
| 3513 | var bottom = _layoutArray(settings, settings.layout, "bottom") |
| 3514 | var renderer = _fnRenderer(settings, "layout") |
| 3515 | |
| 3516 | // Everything above - the renderer will actually insert the contents into the document |
| 3517 | top.forEach(function (item) { |
| 3518 | renderer(settings, insert, item) |
| 3519 | }) |
| 3520 | |
| 3521 | // The table - always the center of attention |
| 3522 | renderer(settings, insert, { |
| 3523 | full: { |
| 3524 | table: true, |
| 3525 | contents: [_fnFeatureHtmlTable(settings)] |
| 3526 | } |
| 3527 | }) |
| 3528 | |
| 3529 | // Everything below |
| 3530 | bottom.forEach(function (item) { |
| 3531 | renderer(settings, insert, item) |
| 3532 | }) |
| 3533 | } |
| 3534 | |
| 3535 | // Processing floats on top, so it isn't an inserted feature |
| 3536 | _processingHtml(settings) |
| 3537 | } |
| 3538 | |
| 3539 | /** |
| 3540 | * Draw the table with the legacy DOM property |
no test coverage detected