ポストバックを実行し、画面が閉じられたときに画面のデータをセッションに保存する必要があります。これは、onBeforeUnload イベントを使用して、画面に非表示のボタンを配置するためです。on before unload イベントでは、クリック イベントを呼び出してボタン サーバー イベントを呼び出しています。しかし、イベントは発生していません。ここに欠けているものはありますか。
<asp:Button Style="display: none" runat="server" ID="btnHidUpdate" OnClick="btnHidUpdate_Click" />
<script type="text/javascript">
$(document).ready(function () {
window.onbeforeunload = updateSessionBeforeUnload;
});
</script>
.js ファイル内:
function updateSessionBeforeUnload() {
var hidUpdate = $('[id$="btnHidUpdate"]')[0];
hidUpdate.click();
}
.cs コード ビハインド:
protected void btnHidUpdate_Click(object sender, EventArgs e)
{
UpdateSession();
}