このHTMLを検討してください
<table id="search_results">
<tr><td><a href="reports.php" style="display:none">_</a>Report 1</td></tr>
</table>
親 (TR) に href 属性を持つ A タグが含まれている TD をマウスでクリックすると、ウィンドウがそのページにリダイレクトされるコードを作成しました。
//Set row clicking
$('table#search_results td').click(function () {
var href = $(this).parent().find('a').attr("href");
if (href) { window.location = href; }
});
このコードは、ユーザーが TD をクリックした場合に完全に機能します。ただし、戻るボタンが押されたときにクリックイベントをトリガーするコードを作成しました。
$(document).keypress(function(e) {
if(e.which == 13) {
$('table#search_results tr:not([class=vanish]) td:first').click();
}
});
コードをデバッグしました。戻るボタンが押されると、クリック イベントが実際にトリガーされ、href 変数が適切に入力されますが、ページは単に ? で更新されます。設定された href にリダイレクトされるのではなく、URL の最後に... 「index.php?」
なぜこれが起こるのでしょうか?