2つのテーブルがあり、1つは動的です。データテーブルプラグインは静的なテーブルではうまく動作しましたが、ダイナミックテーブルに同じコードを実装しても機能しません(任意のオプションをクリックすると「テーブルで利用可能なデータがありません」と表示されます)。私はすでに2番目のテーブルをテストして、HTMLも生成しました。ここでは、データテーブルの場合 は(両方が両方のテーブルに同じですDATATABLEスクリプトとjQueryのソース)私のコードサンプルである - ここでjQueryデータテーブルが機能しません(任意のオプションをクリックすると「テーブルにデータがありません」というメッセージが表示されます)
//Used scripts are :
//<script src="~/Scripts/jquery-3.1.1.min.js"></script>
//<script src="~/Scripts/jquery-ui-1.12.1.min.js"></script>
//<link href="https://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" rel="stylesheet" type="text/css">
//<link rel="stylesheet" href="//cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css">
//<script src="//cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>
(function ($) {
// var table = $('#tbl_issue_Table').DataTable(
//or
var table = $('#myTable').DataTable(
{
paging: true,
pagingType: "full_numbers",
stateSave: true, autoWidth: true
})
});
で(改ページは、検索などがうまく働いていた)うまく動作私の静的テーブルのコードサンプルがありますデータテーブル -
<table id="myTable" class="table table-striped">
<thead>
<tr>
<th>ENO</th>
<th>EMPName</th>
<th>Country</th>
<th>Salary</th>
</tr>
</thead>
<tbody>
<tr>
<td>001</td>
<td>Anusha</td>
<td>India</td>
<td>10000</td>
</tr>
<tr>
<td>002</td>
<td>Charles</td>
<td>United Kingdom</td>
<td>28000</td>
</tr>
<tr>
<td>003</td>
<td>Sravani</td>
<td>Australia</td>
<td>7000</td>
</tr>
<tr>
<td>004</td>
<td>Amar</td>
<td>India</td>
<td>18000</td>
</tr>
<tr>
<td>005</td>
<td>Lakshmi</td>
<td>India</td>
<td>12000</td>
</tr>
<tr>
<td>006</td>
<td>James</td>
<td>Canada</td>
<td>50000</td>
</tr>
<tr>
<td>007</td>
<td>Ronald</td>
<td>US</td>
<td>75000</td>
</tr>
<tr>
<td>008</td>
<td>Mike</td>
<td>Belgium</td>
<td>100000</td>
</tr>
<tr>
<td>009</td>
<td>Andrew</td>
<td>Argentina</td>
<td>45000</td>
</tr>
<tr>
<td>010</td>
<td>Stephen</td>
<td>Austria</td>
<td>30000</td>
</tr>
<tr>
<td>011</td>
<td>Sara</td>
<td>China</td>
<td>750000</td>
</tr>
<tr>
<td>012</td>
<td>JonRoot</td>
<td>Argentina</td>
<td>65000</td>
</tr>
</tbody>
</table>
そして、ここでは、動的テーブルのコードサンプルである -
//For generating dynamic table:
<script>
$(document).ready(function() {
$("#tableDiv").hide();
var pbsIDval = $("#pbsDropDown").val();
var officeIDval = $("#officeDropDown").val();
var statusIDval = $("#statusDropDown").val();
var startDateval = $("#startDate").val();
var endDateval = $("#endDate").val();
$("#searchButton").click(function() {
$("#tableDiv").show();
var issueCount = 0;
$("#rowBody").empty();
$.ajax({
type: 'POST',
url: '@Url.Action("SearchData")',
datatype: JSON,
data: {
PbsId: pbsIDval,
OfficeId: officeIDval,
StatusId: statusIDval,
StartDate: startDateval,
EndDate: endDateval
},
success: function (response) {
if (response.success == true) {
$.each(response.data, function (rt, val) {
var uri = "http://172.16.1.47:8000/RecordFiles/IssueCreator/b0a9d79c-301a-43c3-bf79-b9672bbe669d.wav";
$("#rowBody").append('<tr><td>' + val.Id + '</td>' + '<td>' + val.PbsName + '</td>' + '<td>' + val.OfficeName + '</td>' + '<td>' + val.ProblemName +
'</td>' + '<td>' + val.StatusName + '</td>' + '<td>' + val.ResolverName + '</td>' + '<td>' + val.OPSName + '<td><audio controls="controls"><source src='+ uri +' type="audio/ogg"></audio></td></tr>')
issueCount++;
});
}
}
});
});
});
</script>
//Datatable script and links both are same for both table
<table class="table table-condensed table-bordered table-hover" id="tbl_issue_Table" cellspacing="0">
<thead id="reportTableHeader">
<tr class="uiTableHeader">
<th>Issue ID</th>
<th>Pbs Name</th>
<th>Office Name</th>
<th>Problem Name</th>
<th>Status</th>
<th>Resolver Name</th>
<th>OPS Name</th>
<th>Audio Record</th>
</tr>
</thead>
<tbody id="rowBody">
</tbody>
</table>
最初の表はうまく働いた、問題が発生した第二のテーブルの間に –
は何正確に動作しないのですか?最初のテーブルのように、最初はプラグインをinitする必要があります(idが異なる場合もあります)。var table = $( '#tbl_issue_Table')。DataTable(); – h0rn3t
親切に第2のテーブルのスクリプトとHTMLテーブルを参照してください、私は第2のテーブルのデータテーブルを使用しているときに動作していない(ページ番号、検索など) –