我有一個使用PHP從Sql數據庫創建的表,該表使用以下代碼示例成功顯示錶信息 。從使用MySql創建的表中獲取ROW ID以與OnClick函數一起使用
<table class="mytable loottable" id="guildmembers">
<?php
$query = mysql_query("SELECT $member.charname, $member.char_lvl, $trskill.skill_desc, .....
if (mysql_num_rows($query) > 0) {
while (false !== ($row = mysql_fetch_assoc($query))) {
echo '<tr id="'.$row['charname'].'">'; <-- setting row id here
echo '<td class="lootrow" id="memth1">'.$row['charname'].'</td>';
echo '<td class="lootrow" id="memth2">'.$row['rank_desc'].'</td>';
echo '<td class="lootrow" id="memth3">'.$row['class_name'].'</td>';
echo '<td class="lootrow" id="memth4">'.$row['char_lvl'].'</td>';
echo"</tr>\n";
}
mysql_free_result($query);
}
?>
</table>
頁面源的示例,其中我已驗證每個錶行都被分配了正確的ID。
<tr id="Calysta"><td class="lootrow" id="memth1">Calysta</td><td class="lootrow" id="memth2">Guild Leader</td><td class="lootrow" id="memth3">Inquisitor</td></tr>
<tr id="Rynanx"><td class="lootrow" id="memth1">Rynanx</td><td class="lootrow" id="memth2">Guild Leader</td><td class="lootrow" id="memth3">Mystic</td>
我將每個表的行ID設置爲始終唯一的第一個字段。然後我試着在下面的函數中使用這個 ID將用戶重定向到一個配置文件頁面,當他們點擊表格中的一行時。
<script type="text/javascript">
$(document).ready(function() {
$("table.mytable").each(function() {
table = $(this);
if ($(table).attr("id")=="guildmembers") {
$(this).click(function(){
window.location.href = "http://eq2players.com"+
"/Kithicor/" + $(this).attr("id") + "/";
});
}
})
});
</script>
如果單擊 第一行應在與下面的地址,例如瀏覽器中打開一個新的頁面:「http://everquest2.com/Kithicor/Calysta/」
而是沒有問題點擊正在創建的網址的網址 是「http://everquest2.com/Kithicor/guildmembers/」
這是表ID。而不是被點擊的行的ID。我已嘗試過各種解決方案 ,並且無法計算如何獲取此點擊函數中的行ID。任何幫助,這將非常讚賞。謝謝。
您正在複製'id',檢查像'id =「memth1/2/3/4」'這樣的東西不應該重複,ids應該*唯一。 – Jakub 2010-12-13 20:16:15