У меня есть страница с таблицей:
<table id="myTable">
<thead>
<tr>
<th>Description</th>
<th>Qty</th>
<th>Cost</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
@Html.EditorFor(model => item);
}
</tbody>
</table>
И затем я инициализирую Tabular следующим образом:
$("#myTable").tabulator({
layout: "fitColumns",
addRowPos: "bottom",
columns: [
{ title: "Description", field: "Description", editor: "input" },
{ title: "Qty", field: "Quantity", sorter: "number", editor: "number", editorParams: { min: 0, step: 1, } },
{ title: "Cost", field: "Cost", sorter: "number", editor: "number", editorParams: { min: 0, step: 0.1, }, align: "right", formatterParams: { decimal: '.', thousand: '.', symbol: "R" }, bottomCalc: "sum", bottomCalcFormatter: "money", bottomCalcFormatterParams: { decimal: '.', thousand: '.', symbol: "R" } },
{ formatter: "buttonCross", width: 30, align: "center", cellClick: function (e, cell) { cell.getRow().delete(); } },
],
});
Все это работает довольно хорошо, но я попытался добавить:
$("#add-row").click(function () {
$("#myTable").tabulator("addRow", {}, true);
});
нажатие на мою кнопку для добавления новой строки приводит к: Ошибка: невозможно вызвать методы в табуляторе до инициализации;попытался вызвать метод 'addRow'
Я пытался сделать: var table = $("#myTable").tabulator...
с table.addRow({})
, но затем я получаю сообщение об ошибке, говоря, что addRow не является функцией.
Должен ли он работать какэто?