【发布时间】:2015-10-29 12:29:01
【问题描述】:
我使用 DataTable.js。我想在我的桌子上添加一个按钮。我正在使用带有 TableTools 2.2.4 和 DataTables 1.10.7 的 Knockout.Js。
有人可以帮我解决这个问题吗?
添加示例代码供您参考。
getAppoiintmentData: function () {
var self = this;
showLoadingImage();
$.ajax({
type: "POST",
url: url,
data: "",
error: function (xhr, status, error) {
noty({ text: "Failed to load Appointment data.", timeout: 5000, type: NOTY_MSG_TYPE.error });
hideLoadingImage();
// do something about the error
},
success: function (response) {
self._extractAppointment(response.ReturnData);
ko.applyBindings(MANAGE_APPOINTMENT_VIEW);
var table = $("#appoinmentListdatatable").DataTable({ responsive: true });
$.fn.dataTable.TableTools(table, {
"buttons": [
"copy",
"csv",
"xls",
"pdf",
{ "type": "print", "buttonText": "Print me!" }
]
});
hideLoadingImage();
}
});
}
$(function () { MANAGE_APPOINTMENT_VIEW.getAppoiintmentData(); });
HTML 代码:
<div class="block full">
<div class="block-title">
<h2>Appointments</h2>
</div>
<div class="table-responsive ">
<table id="appoinmentListdatatable" class="table table-striped table-bordered table-vcenter">
<thead>
<tr class="th">
<th width="5%"><input type="checkbox" data-bind="checked: makeAllCheckUnCheck($element.checked)" /> </th>
<th width="16%">Patient Name</th>
<th width="16%">Mobile No.</th>
<th width="16%">Appointment Date</th>
<th width="16%">Appointment Time</th>
<th>Reason</th>
<th width="8%">Action</th>
</tr>
</thead>
<tbody>
<!-- ko foreach: appoinmentList() -->
<tr>
<td style="text-align:center"><input type="checkbox" data-bind="checked: isChecked()"/></td>
<td data-bind="text: Name"></td>
<td data-bind="text: Mobile"></td>
<td data-bind="text: AppointmentDateText()"></td>
<td data-bind="text: AppointmentTime"></td>
<td data-bind="text: Reason"></td>
<td style="text-align:center">
<a href="javascript:void(0)" data-rel="popup" data-position-to="window" data-transition="pop" data-bind="click: $parent.openPopUp" data-toggle="tooltip" title="View More" class="btn btn-effect-ripple btn-xs btn-success"><i class="fa fa-pencil"></i></a>
<button class="btn btn-effect-ripple btn-xs btn-danger" data-bind="click: $parent.confirmCancelAppointmentConfirm"><i class="fa fa-times"></i></button>
</td>
</tr>
<!-- /ko -->
</tbody>
</table>
</div>
</div>
【问题讨论】:
-
你指的是
TableTools.js在这里查看链接datatables.net/release-datatables/extensions/TableTools/js/…。 -
请正确缩进您的代码。
-
是的,我指的是 TableTools.js。我将它与 Knockout.js 一起使用。我正在尝试获取使用 Knockout 可观察数组值填充的表格上的按钮。
标签: jquery asp.net-mvc-4 knockout.js datatables-1.10