我有一個表單,它包含輸入字段,gridview和buttons.I要警告用戶在從Form導航時丟失數據。在Firefox(5)中,Chrome可以正常工作,但即它不。在這裏我給我的劇本window.onbeforeunload不能在IE中工作
<script type="text/javascript">
function setConfirmUnload(on) {
window.onbeforeunload = (on) ? unloadMessage : null;
}
function unloadMessage() {
return 'You have entered new data on this page.' +
' If you navigate away from this page without' +
' first saving your data, the changes will be' +
' lost.';
}
$(document).ready(function() {
$(':input', document.aspnetForm).bind(
"change", function() {
setConfirmUnload(true);
}
); // Prevent accidental navigation away
});
</script>
在提交按鈕,我宣佈OnClientClick="setConfirmUnload(true);"
任何人都可以有任何想法,這個。請幫我
感謝
我剝出了jQuery'ready'功能,只是叫'setConfirmUnload(真)'內頁和它的工作正常。我的猜測是a)你有一個在'IE'下觸發的錯誤,而不是'Chrome'或者有'HTML'佈局錯誤,這意味着你的'selector'不工作。把'console.log'放在ready語句中,並跟蹤那裏發生的事情。 –
Thinks很多..但我的頁面包含很多gridviews添加按鈕。如果我按照你的做法,在GridView的分頁也顯示警報框。如何停止這種警報在分頁。和在GridView的下一頁如果我正在做任何更改警報不會來。是否有任何解決方案? – Madhu
您尚未提供足夠的信息。我/我們不知道你的HTML是什麼樣的。我唯一能做的就是我所做的 - 指出問題的最可能來源,以幫助您縮小範圍。 –