-1
AjaxソースのDatatableを持っています。#datatableOne
の行をカウントしたいところです。 'Status'列の値は 'Unknown'です。私は以下を試した。特定の列の値を持つAjaxソースのデータテーブル(ページングされた行を含む)の行をカウントする
これが唯一のアクティブなページ
function tableOneRowCount(){
var rows = $("#datatableOne td:nth-child():contains('Unknown')").length;
alert("Unknown rows :" + rows);
}
内の行をカウントし、一度それらを見えるようにしない限り、これもないページ番号付きの行を含んでいます。 2ページ目を選択しない限り、2ページ目の「不明な」行は含まれません。
私はjavascriptで非常にしっかりした経験をしていません。
以下は、どのように私のデータテーブルをロードするのかです。
あなたがデータをロードした後、あなたがそうのようなtableOne
からすべての行を取得するには
data()
メソッドを使用することができます
var tableOne = $('#datatableOne').DataTable({
ajax:{
url: '@Url.Action("AssetsUnderContract_AjaxHandler", "SiteReport")',
type: 'GET',
data: { "SiteReportID": SiteReportID }
},
"bProcessing": true,
"columns": [
{"data": "report_asset_id"},
{"data": "product_name"},
{"data": "serial_number"},
{"data": "description"},
{"data": "site_location"},
{"data": "asset_guarantee"},
{"data": "asset_calibration_status"}
],
"columnDefs": [
{
"targets": 7,
"data": null,
"defaultContent": '<button class="btn btn-round btn-primary btn-xs" type="button">Load</button>'
}
],
"fnRowCallback": function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {
if(aData["asset_guarantee"] == true){
$("td:eq(5)", nRow).text("").wrapInner('<span class="glyphicon glyphicon-check"></span>').css("text-align", "center")
}else {
$("td:eq(5)", nRow).text("").wrapInner('<span class="glyphicon glyphicon-unchecked"></span>').css("text-align", "center")
}
if(aData["asset_calibration_status"] == 0){
$("td:eq(6)", nRow).text("Unknown").wrapInner('<span class="label label-default"></span>').css("text-align", "center")
}else if(aData["asset_calibration_status"] == 1){
$("td:eq(6)", nRow).text("Completed").wrapInner('<span class="label label-success"></span>').css("text-align", "center")
}else if(aData["asset_calibration_status"] == 2){
$("td:eq(6)", nRow).text("Not Found").wrapInner('<span class="label label-danger"></span>').css("text-align", "center")
}else if(aData["asset_calibration_status"] == 3){
$("td:eq(6)", nRow).text("Pending").wrapInner('<span class="label label-danger"></span>').css("text-align", "center")
}
return nRow;
}
});