我正在尝试使用数据表选项显示 excel 按钮。按钮正在显示,但是当我向表中添加动态列时,由于列中有一些空值,按钮不起作用。实际上表列标题的数量是固定的,但列值不同(它们的数量不是固定的)。请找到以下随附的屏幕截图以供参考。
https://i.stack.imgur.com/7gEoV.png
下面是我添加动态列时的代码:
<thead>
<tr>
<th>Serial Number</th>
<th>Company Name</th>
<th>Sector</th>
<th>Main Product</th>
<th>City</th>
<th>Province</th>
<th>Owner Name</th>
<th>Artisan 1</th>
<th>Trade</th>
<th>Artisan 2</th>
<th>Trade</th>
</tr>
</thead>
////////// 用于检索列值的 PHP 代码 ///////////
$data .= "<tr>";
$extra = " ";
$sqlArtisan = "select artisan_name,trade from sme_artisans where sme_id = $id order by sme_id limit 2";
$retArtisan = pg_query($db, $sqlArtisan);
$rows = pg_num_rows($retArtisan);
if($rows > 0){
$data .= "<td>".$serialNumber."</td><td>".$companyName."</td><td>".$industryName."</td><td>".$mainProduct."</td>
<td>".$cityName."</td><td>".$province."</td>
<td>".$ownerName."</td>";
while($rowArtisan = pg_fetch_row($retArtisan)){
if($rowArtisan[0] == null){
$data .= "<td>".$extra."</td><td>".$extra."</td>";
}else{
$data .= "<td>".$rowArtisan[0]."</td><td>".$rowArtisan[1]."</td>"; }
}
}
$data .= "</tr>";
//////////// 显示按钮的脚本 ///////////
<script>
$(document).ready(function() {
$('#example').DataTable( {
"paging": false,
dom: 'B',
buttons: [
'copy', 'csv', 'excel'
]
} );
} );
</script>
请查看这些详细信息并提出可能的解决方案。非常感谢。