2012-07-25 21 views
0

我试图使用PHP解析CSV,然后试图用Dtable呈现从csv文件填满我的Jquery Dtable,但似乎并不工作(jQuery的数据表从csv文件

TypeError: nCell is undefined 
[Break On This Error] nCell.className += ' '+oCol.sClass; 

)。什么是其他解决方法,以使其工作?

<script type="text/javascript" charset="utf-8"> 
      $(document).ready(function() { 
       $('#result_table').dataTable(); 
      }); 
</script> 


<?php 
echo " 
<table cellpadding='0' cellspacing='0' border='0' class='display' id='result_table' width='100%'> 
      <thead> 
       <th>Zeit</th> 
       <th>Level</th> 
       <th>Message</th> 
       <th>Refferer</th>   
      </thead>\n\n"; 
$f = fopen("../logfile.csv", "r"); 
while (($line = fgetcsv($f)) !== false) { 
     echo "<tr>"; 
     foreach ($line as $cell) { 
       echo "<td>" . htmlspecialchars($cell) . "</td>"; 
     } 
     echo "<tr>\n"; 
} 
fclose($f); 
echo "\n <tfoot> 
     <tr> 
       <th>Zeit</th> 
       <th>Level</th> 
       <th>Message</th> 
       <th>Refferer</th>  
     </tr> 
    </tfoot></table>"; 
?> 
+0

代码中的标记在哪里?它是否是CSV文件的一部分(肯定不是)?你能否再次修改代码? – Shant 2012-07-25 05:37:29

回答

0

根据上面的评论,它看起来像你缺少标签。

<tbody> 
</tbody> 

我会检查Firebug或查看源代码中的HTML输出后,它读取CSV以确保它是一个有效的表。

+0

没有帮助。我猜想渲染是不正确的 – lgt 2012-07-25 06:23:03

+2

是的,foreach($ line as $ cell){让我觉得它每行只放一个单元格。所有行都需要4个单元格。 – Wulfram 2012-07-25 06:25:14

+0

也许你是对的当我var_dump(“​​”.htmlspecialchars($ cell)。“”);比看起来好像有一个单元格加 – lgt 2012-07-25 06:33:29