JSON 인코딩 된 PHP 응답의 정보를 표시하기 위해 jQuery DataTables를 사용하고 있습니다. JSON 응답에는 "name"개체가 포함되어 있습니다. "이름"은 "성명", "성", "ID"를 포함합니다. 나는 원하는 방식으로 데이터를 표시하기 위해 columns
을 사용했지만, 알아낼 수없는 문제가 발생했습니다.jQuery DataTables 렌더링 열 데이터
아래 예제 코드에서 "성"별로 정렬하는 동안 "전체 이름"이 표시됩니다. 그러나 예제 2는 전혀 작동하지 않습니다. 원하는 결과물에는 HTML 렌더링 된 표시가 포함되고 "성"으로 정렬됩니다. 예제 3에서는 디스플레이가 원하는 방식으로 렌더링되었지만 올바르게 정렬되지 않았습니다.
누구든지 찾고있는 것을 출력하기 위해 예제 2를 조정하는 방법을 알고 있습니까 (렌더링 및 정렬 된 데이터)?
var oTable = $('#table').DataTable({
'ajax': {
url: 'PHP-file-returns-JSON.php',
type: "POST",
dataSrc: function (data) {
return data.cols;
},
data: function(d) {
///send additional values to POST
var frm_data = $('#val1, #val2').serializeArray();
$.each(frm_data, function(key, val) {
d[val.name] = val.value;
});
}
},
'columns':[
// exapmle 1 - works but not rendered with HTML
{ data: {
_: "name.Full Name",
sort: "name.Last Name",
}
},
// example 2 not working at all
{ data: 'name', "render": function (data, type, row) {
return '<span id="'+data.ID+'">'+data.Full Name+'</span>';
},
"sort" : "name.Last Name",
},
// example 3 works fine with HTML rendered display but not sorted
{ data: 'name', "render": function (data, type, row) {
return '<span id="'+data.ID+'">'+data.Full Name+'</span>';
}
},
]
});
UPDATE :
HERE 내가 함께 일하고 있어요 데이터 구조를 보여줍니다 JSFiddle입니다. 작업 예제에는 성으로 정렬 된 전체 이름 만 표시됩니다. 디스플레이에 id 속성으로 ID가 포함 된 스팬 요소를 포함시키는 방법을 파악하려고합니다. 마지막 이름에 열을 정렬해야하는 경우
모든 예제에서 나는 문제가 데이터 테이블의 순서를 허용하기 때문에 셀에 추가 태그를 만들지 않는다는 것을 알아 냈습니다. 왜 td에 id를 추가하고 스팬을 사용하지 않습니까? 귀하의 예를 들어 1 – cralfaro
간단한 JSFiddle을 사용해 사례를 설명해주십시오. 예를 들어 테이블에 3 개의 열이 있습니까? 단순한 JSON 객체를 데이터 소스로 사용하여 Ajax 반환을 조롱 할 수있다. – annoyingmouse
@annoyingmouse JSFiddle을 사용하여 JSON 응답을 설정하는 방법을 잘 모르겠습니다. 그러나 내 코드 샘플에는 HTML로 렌더링 된 전체 이름이 포함 된 열 하나만 표시되어야합니다. 나는 사람들이 내가하려는 일에 대해 더 잘 이해할 수 있도록 3 가지 예를 보여 줬다. – Austin