我有這樣一段代碼檢查與用戶,如果它是確定要離開頁面而不保存:自動回上DROPDOWNLIST問題
<script language="JavaScript">
window.onbeforeunload = !isPostBack && confirmExit;
function isPostBack() {
return <%= Page.IsPostBack ? "true":"false" %>
}
function confirmExit() {
return "Some lame question for user. :)";
}
</script>
有與具有dropDownLists,我必須的AutoPostBack設置爲頁面的問題真正。 AutoPostBack = true每次都會導致惱人的彈出窗口。 我已經想出瞭如何檢查postBack(謝謝谷歌),但現在我卡住了。
不應該有錯,我不知道什麼時候談到java腳本。我是窮人的桌面程序員,想要學習新東西。
不知道確切的問題是在這裏有什麼,你是什麼意思惱人的彈出? confirmExit()方法不應該這樣做:'return confirm('Question?');' – greg84 2012-02-03 16:09:21
他意味着重新發布之前發佈的表單的警告。 – 2012-02-03 16:11:53
您不能僅僅依靠檢查頁面是否已經「PostBack:ed」。一旦發生回發,IsPostBack將爲真,但用戶仍然可以嘗試將頁面留給另一個頁面。您必須檢查頁面卸載的原因,即當用戶導致回發(控件上的javascript onclick事件處理程序導致回發)時,通過使用客戶端代碼設置客戶端變量。 – PHeiberg 2012-02-03 16:15:25