와 함께 사용하기 위해 문자열에서 자바 스크립트 객체를 생성이 질문은 플러그인은 여기에 관한됩니다 : 그래서 코드가 오류없이하지만 클래스 "qwer"함께 잘 작동는 datatables
var hidecols = '{"sClass": "Hide", "aTargets": [0]},{"sClass": "asdf", "aTargets": [1]},{"sClass": "qwer", "aTargets": [2]}';
var hidecolsobj = eval('(' + hidecols + ')');
var oTable = $('#MainContent_OverviewTable').dataTable({
"sPaginationType": "full_numbers",
"bProcessing": true,
"bServerSide": true,
"aoColumnDefs":
[
hidecolsobj, // <--------- *** HERE ***
],
"sAjaxSource": "Services/Service.svc/GetDataTableOutputOverview",
"fnServerData": function (sSource, aoData, fnCallback) {
var jsonAOData = JSON.stringify(aoData);
$.ajax({
type: "POST",
async: true,
url: sSource,
contentType: "application/json; charset=utf-8",
data: '{"Input":' + jsonAOData + '}',
dataType: "json",
success: function (msg) {
fnCallback(msg);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.responseText);
}
});
}
});
http://www.datatables.net/usage/columns는 단 하나입니다 내 테이블에 적용되고있어. 나는 이것을 시험해 보았고, 그것은 나의 객체 목록에 마지막으로 나타나는 클래스만을 적용한다. 각 열에 hidecols 변수에 정의 된 클래스가 있어야합니다. 어떻게해야합니까?
이는 Datatables 웹 사이트에서 문서에 표시하는 방법입니다
$('#example').dataTable({
"aoColumnDefs": [
{ "sClass": "my_class", "aTargets": [ 0 ] }
]
});
편집 :
이 "aoColumnDefs":
[
{ "sClass": "Hide", "aTargets": [0] },
{ "sClass": "asdf", "aTargets": [1] },
{ "sClass": "qwer", "aTargets": [2] }
],
위의 편집이 제대로 작동하지만이 나를 위해 옵션을 선택하지 않습니다. 동적으로 문자열 hidecols를 빌드 할 수 있어야합니다.
흠은 ... 나는 평가를 제거하고 싶습니다,하지만 난 프로그래밍 방식의 경우 객체가 아닌 문자열을 hidecols을 구축 할 수 있습니까? – Robodude
네, 가능합니다. 'hidecols.push ({ "sClass": "NewClass", "aTargets": [2]})와 같은 것입니다. 그것은 단지 배열을 조작하는 것입니다. – Allan
오 -_- 예. 나는 그것을 알고 있었다! 나는 맹세한다! :) 고마워, 앨런! – Robodude