动态获取数据表中 $aColumns 数组中的列名
首先我会提到我想要实现的目标.我正在使用 PHP 的 CodeIgniter 框架.我的数据库中有 5 个表,我想在显示页面上单击按钮以 Datatables 格式显示它们.我使用服务器端处理 php 作为数据源.所以一开始我编写了只显示一个Datatable格式的表格的代码,并且成功了.现在我想在按钮单击事件中一次显示 5 个表中的一个表.但是 $aColumns 长度应该等于 HTML 表中定义的列数.现在考虑标记表,它有 4 列 student_id、exam_id、subject_id 和marks_achieved.现在另一个表是 branch 并且只有 2 列 branch_id 和 branch_name.所以我不能动态增加或减少 HTML 中的标签,所以我很困惑.我也使用这个 source 创建数据表.您可以在此处查看我的 getTable() 函数.>
jQuery:
$(document).ready(function(){$('#datatable').dataTable({"sPaginationType":"full_numbers","bJQueryUI":true,bProcessing":真,bServerSide":真,"sServerMethod": "GET","sAjaxSource": "数据表/获取表","iDisplayStart": 0,iDisplayLength":10,"aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]],"asorting": [[0, 'asc']],"aoColumns": [{ "bVisible": true, "bSearchable": true, "bSortable": true },{ "bVisible": true, "bSearchable": true, "bSortable": true },{ "bVisible": true, "bSearchable": true, "bSortable": true },{ "bVisible": true, "bSearchable": true, "bSortable": true }]})$('input[type=button]').bind('click', function(){var param = $(this).attr('id');数据 = 参数 + '=1';$.ajax({类型:'POST',网址:'数据表',数据:数据}).完成(功能(数据){控制台日志(数据);$('#display_area').html(数据);});})});
HTML:
<script type="text/javascript" src="../js/jquery.js"></script><script type="text/javascript" src="../js/javascript.js"></script><script type="text/javascript" src="../js/jquery.dataTables.min.js"></script>头部><body id="dt_example"><form action="" method="post"><input type="button" id="display_branch" name="display_branch" value="显示分支表" ><input type="button" id="display_marks" name="display_marks" value="显示标记表" ></表单><div id="容器"><div id="演示"><table id="datatable" cellpadding="0" cellspacing="0" border="0" width="100%"><头><tr><th>学生ID</th><th>考试ID</th><th>主题ID</th><th>取得的成绩</th></tr></thead><tr><td></td><td></td><td></td><td></td></tr></tbody><tfoot></tfoot><div class="spacer"></div>