2011-02-09 40 views
0

如果这是一个业余问题,从关闭的道歉。 我想让Jquery Tablesorter插件与从MySql数据库中使用PHP生成的表一起工作。目前我无法完成分类工作。我在想它与JavaScript和PHP操作的顺序有关,并可能需要在JavaScript中实现回调或其他。反正代码,我拥有的是:JQuery Table Sorter - PHP相关

<html> 
<head> 
<script src="jquery/jquery.js" type="text/javascript"></script> 
<script src="jquery/jquery.tablesorter.min.js"></script> 

<script type="text/javascript"> 
$(document).ready(function() 
    { 
     $("#table1").tablesorter({ sortlist: [0,0] }); 
    }); 
</script> 
</head> 
<body> 

<?php 
$con = mysql_connect("localhost","root","root"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

mysql_select_db("Database1", $con); 

$result = mysql_query("SELECT * FROM PlayerStats1 WHERE G>2 LIMIT 0,20"); 

echo "<table id=\"table1\" class=\"tablesorter\" border=1px> 
<caption align=top>Stats</caption> 
<thead> 
<tr> 
<th width=90px>Forename</th> 
<th width=90px>Surname</th> 
<th width=50px>Team</th> 
<th width=40px>G</th> 
<th width=50px>RPG</th> 
<th width=50px>APG</th> 
<th width=50px>TOPG</th> 
<th width=50px>BPG</th> 
<th width=50px>SPG</th> 
<th width=50px>PPG</th> 
</tr> 
</thead>"; 

while($row = mysql_fetch_array($result)) 
    {  
    echo "<tbody>"; 
    echo "<tr>"; 
    echo "<td>" . $row['FORENAME'] . "</td>"; 
    echo "<td>" . $row['SURNAME'] . "</td>"; 
    echo "<td align='center'>" . $row['TEAM'] . "</td>"; 
    echo "<td align='center'>" . $row['G'] . "</td>"; 
    echo "<td class='col1' align='center'>" . $row['RPG'] . "</td>"; 
    echo "<td class='col2' align='center'>" . $row['APG'] . "</td>"; 
    echo "<td class='col3' align='center'>" . $row['TOPG'] . "</td>"; 
    echo "<td class='col4' align='center'>" . $row['BPG'] . "</td>"; 
    echo "<td class='col5' align='center'>" . $row['SPG'] . "</td>"; 
    echo "<td class='col6' align='center'><b>" . $row['PPG'] . "</b></td>"; 
    echo "</tr>"; 
    echo "</tbody>"; 
    } 
echo "</table>"; 

mysql_close($con); 
?> 

</body> 
</html> 

如果它是实现通话的情况下背任何指导/代码,将不胜感激。

+0

不认为这与问题有关,但:``是无效的代码。它应该是``(不含`px`)或``(在`px`中使用`style`)。你得到的代码可能会工作,但也可能导致问题,并且肯定不符合标准,因此可能导致浏览器进入怪异模式。 – Spudley 2011-02-09 22:50:26

回答

0

与序列无关;你的浏览器执行Javascript,就其而言,PHP生成的HTML与任何HTML相同,所以它生成的事实是无关紧要的。我建议你打开tablesorter中的调试模式,并使用Firebug,看看是否照亮了这个问题,否则我从表面上看不到可能导致问题的原因。不是说它可能不在那里,我只是想念它。 :)

0

Tbody标记只能在TR循环中调用一次。 TBody是所有表格TR元素的奇异集合。这将会让桌面游戏变得更好。

+0

好点,我没有注意到这个tbody在循环中。是的,把它放在外面,这可能是令人困惑的事情。使用多个tbody可能很有用,但在这种情况下可能不会。 – Andrew 2011-02-09 22:58:30