我正在使用UI Bootstrap 的选项卡并在每个选项卡中插入数据表,但数据表没有被呈现。
如果我删除uib-tabset
并且uib-tab
数据表被渲染。
这是html代码
<uib-tabset active="active" >
<uib-tab index="0" heading="Successful">
<div class="panel">
<div class="panel-body">
<table id="table-messagestatus-view-successful" class="table table-hover dataTable table-striped width-full">
<thead>
<tr>
<th>MessageID</th>
<th>Date</th>
<th>Message Name</th>
<th>Phone Number</th>
<th>Status</th>
<th>Cost</th>
<th>SMS Group</th>
</tr>
</thead>
<tfoot>
<tr>
<th>MessageID</th>
<th>Date</th>
<th>Message Name</th>
<th>Phone Number</th>
<th>Status</th>
<th>Cost</th>
<th>SMS Group</th>
</tr>
</tfoot>
<tbody>
</tbody>
</table>
</div>
</div>
</uib-tab>
<uib-tab index="1" heading="Unsuccessful">
<div class="panel">
<div class="panel-body">
<table id="table-messagestatus-view-unsuccessful" class="table table-hover dataTable table-striped width-full">
<thead>
<tr>
<th>MessageID</th>
<th>Date</th>
<th>Message Name</th>
<th>Phone Number</th>
<th>Status</th>
<th>Cost</th>
<th>SMS Group</th>
</tr>
</thead>
<tfoot>
<tr>
<th>MessageID</th>
<th>Date</th>
<th>Message Name</th>
<th>Phone Number</th>
<th>Status</th>
<th>Cost</th>
<th>SMS Group</th>
</tr>
</tfoot>
<tbody>
</tbody>
</table>
</div>
</div>
</uib-tab>
</uib-tabset>
...和js
var app = angular.module('smsmanagement', ['ui.bootstrap']);
app.controller('MessageStatusController', function ($scope, $http, $routeParams, $routeParams) {
var messageID = $routeParams.param;
// Refresh the table
if ($('#table-messagestatus-view-successful').length > 0) {
$('#table-messagestatus-view-successful').DataTable({
sDom: "<'row'<'col-sm-6'l><'col-sm-6'f>r>t<'row'<'col-sm-6'i><'col-sm-6'p>>",
"processing": true,
"serverSide": true,
"order": [[1, "desc"]],
"ajax": {
"url": "messagestatus/dt",
"data": function (d) {
d.messageID = messageID;
d.status = "successful";
}
}
});
}
});
我应该怎么办?