我的js文件中有DataTable。
function getStudentDetail(id) {
//id is set globally
var oTableStudentDetails = $('#student_detail').DataTable({});
$('#btn-add-row').on( 'click', function () {
oTableStudentDetails.row.add([' ',' ',' ',' ',' ']).draw();
} );
}
使用此功能,我可以在"中添加新行。 $('#student_detail&#39)。数据表({}); "数据表
我必须从数据库中获取一些数据,我确实在DataTable中获取了它。但之后,我无法像之前一样在dataTable中添加新行。
function getStudentDetail(id) {
//id is set globally
var oTableStudentDetails = $('#student_detail').DataTable({
"bProcessing": true,
"bServerSide": true,
"bDestroy": true,
"bLengthChange": false,
"dataType": "json",
"ajax": {
"url": url_prefix + "/getStudentDetail",
"data": function(d) {
d.idstudent = id;
}
}
});
$('#btn-add-row').on( 'click', function () {
oTableStudentDetails.row.add([' ',' ',' ',' ',' ']).draw(); //this is not working
after using ajax
value in DataTable
} );
}
当我尝试添加新行时,我看到" Processing"但我无法添加新的空行。我究竟做错了什么。任何人都可以提供帮助。
服务器端的结果如下所示
{"aaData": [["1", "roshi", "sssss", "xxxxxxxxxxx", "xxxxxxxxxxx"]], "iTotalRecords": 1, "sEcho": 99, "iTotalDisplayRecords": 1}
任何人都可以帮助我。一切似乎都很好。但为什么我不能添加新的?
答案 0 :(得分:0)
我认为您可能需要在添加行后呈现表格。看起来你正在获取数据,但不能“重绘”表格。
我使用jQuery模板库来做到这一点。你需要写一些类似的东西:
$('page').tmpl(studentTable).appendTo($(page).find('#yourTable tbody'));
这可能是错的,但也许会给你一个开始的地方?我对JQuery和JS比较陌生。