2011-02-09 8 views
0

これはアマチュアの質問です。 MySqlデータベースからPHPで生成されたテーブルで動作するJquery Tablesorterプラグインを取得しようとしています。現時点では、並べ替えを行うことができません。私はJavaScriptとPHPの動作のシーケンスとは何かを考えているし、JavaScriptや何かのコールバックを実装する必要があります。とにかく私が持っているコードは:JQueryテーブルソーター - 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

これは問題に関連しているとは思わないが、 ''は無効なコードです。 '' width = '90 '' ''( '' px'なし) '' '(' px'の単位で 'style'を使用)のいずれかでなければなりません。あなたが持っているコードはうまくいくかもしれませんが、問題を引き起こす可能性があります。間違いなく標準に準拠していないので、ブラウザーをクォークモードにする可能性があります。 – Spudley

答えて

0

シーケンスとは関係ありません。あなたのブラウザはJavascriptを実行しますが、PHPが生成するHTMLはHTMLと同じなので、生成されたということは無関係です。私はtablesorterのデバッグモードをオンにし、Firebugを使用してその問題を明らかにするかどうかを確認することをお勧めします。そうでなければ、問題を引き起こす可能性のある表面が見えません。それがそこにないかもしれないというわけではありません、私はただそれを逃しています。 :)

0

Tbodyタグは、TRループの外で一度だけ呼び出される必要があります。 TBodyはあなたのテーブル本体のTR要素すべての特異なコレクションです。それはジャッキー・テーブル・アップを起こすでしょう。

+0

良い点、私はtbodyがループの中にあったことを捕まえていませんでした。ええ、それを外に置いて、それはおそらく混乱しているテーブル作成者です。複数のtbodyを使用すると便利ですが、おそらくこの場合はそうではありません。 – Andrew

関連する問題