itsource

데이터 테이블에 빈 데이터 메시지를 표시하는 방법

mycopycode 2023. 2. 10. 21:50
반응형

데이터 테이블에 빈 데이터 메시지를 표시하는 방법

서버로부터 빈 데이터를 받는 경우가 있는 경우 DataTables에 No Data found 메시지를 표시하고 싶습니다.이것이 어떻게 가능한 걸까요?

빈 테이블에 표시되는 메시지를 커스터마이즈하려면 다음 명령을 사용합니다.

$('#example').dataTable( {
    "oLanguage": {
        "sEmptyTable":     "My Custom Message On Empty Table"
    }
} );

Datatable 1.10 이후 다음 작업을 수행할 수 있습니다.

$('#example').DataTable( {
    "language": {
        "emptyTable":     "My Custom Message On Empty Table"
    }
} );

테이블의 완전한 가용 데이터 작성 가능 커스텀메시지에 대해서는 다음 링크레퍼런스/옵션/언어를 참조해 주세요.

의 최신 버전dataTables다음과 같은 것이 있다language설정(여기서 취득):

  • "infoEmpty"- 테이블에 레코드가 없을 때 표시
  • "zeroRecords"- 필터링과 일치하는 레코드가 없을 때 표시됩니다.

예.

$('#example').DataTable( {
    "language": {
        "infoEmpty": "No records available - Got it?",
    }
});

참고: 속성 이름에는 특수 문자가 포함되어 있지 않으므로 따옴표를 삭제할 수 있습니다.

$('#example').DataTable( {
    language: {
        infoEmpty: "No records available - Got it?",
    }
});

게임 시작은 늦었지만 현지화 파일을 사용할 수도 있습니다.

DataTable은.json로컬화된 파일(키 포함)sEmptyTable및 대응하는 현지화된 메시지.

를 들어, 위 링크에서 현지화된 json 파일을 다운로드한 후Datatable다음과 같이 합니다.

$('#example').dataTable( {
    "language": {
        "url": "path/to/your/json/file.json"
    }
});

IMHO, 현지화된 콘텐츠가 외부 파일에 있기 때문에 훨씬 깨끗합니다.

이 구문은 DataTables 1.10.16 이전 버전에서 테스트하지 않았습니다.

저도 같은 걸 찾고 있었는데 마지막으로 답을 찾았어요.이 답변이 당신에게 많은 도움이 되길 바랍니다.

어레이가 비어 있으면 다음과 같이 빈 어레이를 전송할 수 있습니다.

if(!empty($result))
        {
            echo json_encode($result);
        }
        else
        {
            echo json_encode(array('data'=>''));
        }

감사해요.

서버측 데이터를 반환하는 경우에는 데이터 속성이 없는 경우에도 데이터 속성을 제공해야 합니다.읽혀지지 않습니다.recordsTotal또는recordsFiltered단, 데이터 객체의 수에 의존합니다.

좋은 생각이네요.즉, 본문에 클래스를 추가하고 테이블에 데이터가 없는 동안 테이블을 숨기거나 표시할 수 있습니다.이것은 나에게 딱 맞습니다.테이블에 레코드가 없는 경우 사용자 정의 NO Record Found 오류 메시지를 설계할 수 있으며 "no-record" 클래스를 추가할 수 있습니다.또한 레코드가 1개 이상 있는 경우 클래스를 삭제하고 데이터 테이블을 표시할 수 있습니다.

jQuery 코드입니다.

$('#default_table').DataTable({

    // your stuff here

    "fnFooterCallback": function (nRow, aaData, iStart, iEnd, aiDisplay) {
        if (aiDisplay.length > 0) {
            $('body').removeClass('no-record');
        }
        else {
            $('body').addClass('no-record');
        }
    }
});

여기 CSS가 있습니다.

.no-record #default_table{display:none;}

여기 공식 링크가 있습니다.

기본적으로 그리드 보기는 주의를 기울입니다. 빈 데이터 세트를 전달하기만 하면 됩니다.

언급URL : https://stackoverflow.com/questions/14375771/how-to-show-empty-data-message-in-datatables

반응형