Dzięki @RamRaider za sugestie, ale nic nie wiem o ajaxie i boję się używać kodu, którego nie do końca rozumiem.
Wymyśliłem jednak to rozwiązanie. Umieściłem tabelę w formularzu i utworzyłem ukryte dane wejściowe, które są ustawiane i przesyłane po kliknięciu dla wiersza.
<form target='_blank' name='getID' method='POST' action='asset_details.php'>
<input type='hidden' name='id' id='id'>
<table>
while($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
echo "
<tr onclick=\"selectID('" . $row['id'] . "')\">
<td>" . $row['id'] . "</td>
<td>" . $row['ser'] . "</td>
<td>" . $row['part'] . "</td>
<td>" . $row['model'] . "</td>
<td>" . $row['make'] . "</td>
<td>" . $row['description'] . "</td>
<td>" . $row['price'] . "</td>
</tr>
</table>
</form>";
JS:
function selectID(id) {
document.getID.id.value = $(this).closest('tr').attr('id');
document.getElementsByName('getID')[0].submit();
}